[DYNRPG PLUGIN]TEXT PLUGIN

Posts

Could you show a screenshot of the event with the boy event where you changed the words spoken?
Nothing wrong there either... and no matter how hard I try, I can't seem to recreate the error message. My last guess now is that the save file got corrupted somehow. If you go to the project folder, there should be a save file called Save01.dyn (if you saved in slot 1). Could you upload the save file which gives you the error message (rmn provides with a "locker" feature which allows you to upload files like that)?
The doesn't seem to be anything wrong with the save files either. I'm at loss here as to why you're getting that error message. There might be some tiny detail I'm missing, or possibly some bug with the SDK or something, but I just can't seem to find any problems, nor replicate any similar error messages.

I'm sorry =/
After reading kaine87's I decided to run some tests and I found the same problem as him/her. (I hardly save or load while playtesting so I hadn't noticed) I'm not sure, but I guess this plugin is not compatible with dhm's faster ATB plugin? I copied said plugin into this one's sample project and I could no longer load my previously saved files. The game throws the same error message mentioned by kaine87. But trying to load a file saved after copying dhm's plugin just leaves the screen black though.
ok, this is getting fairly frustrating. Could you just upload the (however little) modified sample project or something?

I took a look at the source code from dhm's faster plugin but aside from a seemingly unrelated bug in it, I couldn't find anything which would cause any problems (and even adding the .dll to my own sample project doesn't seem to cause any errors either).
Well, besides replacing some rtp files that I had but with different names, I didn't do any changes to the project. (I have the Spanish translation of rm2k3, could that be the problem instead?)

Anyway, I ran some more test and found something curious. Even without dhm's plugin, if I run the game, save, press f12, and load, it works fine everytime. But if then I close the window, run the project again, load, and press f12, I get all sort of errors at random:

"A violation in 003901BD occurred at 00000000 with Write."
"A violation in 003901B8 occurred at 92510201 with Write."
"A violation in 003901D7 occurred at 48007317 with Write."
"A violation in 003901E5 occurred at FFFFFFFF with Read." (...)

Something similar happens once I copy dhm's plugin. I can save and load just fine at first. But when close the project, open it again, and try to load, I get all kinds of this time even nastier errors:

"Access violation in module 'ntdll.dll' in with address 7C920CD0 and offset 05FED924 of type Read occured"
"Access violation in module 'ntdll.dll' in with address 7C921A5E and offset 05FED924 of type Read occured" (...)

So, uh, dunno what it might be, man. I'll upload the sample project anyway, in case you can figure something out.

http://rpgmaker.net/users/alterego/locker/DynText_Plugin.rar

I got one error too, when saving, closing, and reopening the game and loading.
It mentions a read error with msvcrt.dll (MicroSoft Visual C RunTime). Looking on the internet it is the library that handles basic C functions... so it is something standard I suppose what it was looking for, but maybe not charged on memory at the time (picking a little of what Alterego said, about being when the program reloads).

Hope it helps you, since this nifty plugin of yours can make possible a little custom-message system I had "ever" dreamed of <3 (since I saw GoldenSun I had thought about that stuff... text shaking, multiple messages at once... -being on custom places, I would do some "ballons" and the somewhat-animated mugshots :3...-).

Aww darn, salut Kazesui,
Orochii Zouveleki
Although I still haven't been able to replicate any error messages myself yet, I did experience a frozen black screen at the save file, saved before adding the faster_atb plugin, while the faster_atb plugin was still included, which might mean there's something wrong with how the internal function for saving and loading works.

I think I'll try to write some code to this seperately from the SDK instead, to see if it improves anything (once I have time to do so, that is)
Are you using the internal save/load function for DynRPG plugins? In this case, the content of the (probably corrupted) saveXX.dyn file could be interesting!
Yes, I'm using the internal save/load functions of the SDK, and I have checked the content of the saveXX.dyn files, and aside from with the use of multiple plugins, it they don't seem to be corrupted (having double checked with hex editor and everything).

From the looks of it, it seems likes the internal load function can get some trouble if the dyn file don't contain reference to all plugins you're using at the time of loading the game though (seems to be the most valid explanation for not loading properly under the given circumstance)
Okay, one of the bugs is yours:

The DynRPG documentation to onLoadGame says:
Note:
data may be 0 if there is no data.

You always assume that "data" is a valid pointer, thus causing an exception if it's NULL. It's crashing inside msvcrt!strtok at the line 81: buffer = strtok(data, ",");

if(!data) return true;

...would do the trick.

About the other bug (the hang): I haven't found the problem yet, because even the debugger is hanging now O__o
Rather, I assumed strtok would simply return 0 in case data would be 0, which is an assumption I probably should have put to the test. Thanks.

I've reuploaded the plugin fixing the mentioned bug.
I downloaded the new version and I can say that the problem is solved
tanks kazesui ^ ^
The Plugin has been slightly updated

It's now possible to use the text commands \n and \v within the texts you create.
In addition to those, there's a new text command as well, \x.
\x[text identifier]
retrieves the text from another Text object you've already created.

Another plugin command has also been added, @append_text, which allows you to append text to already existing text objects.

Also, the @write_text command now can take "fixed" as 5th parameter to make the text scroll with the map rather than with the screen.

Just important to know is that if you've made any save files using the old version of the plugin, these will not be compatible with the new version.
Tried it out a little. This is awesome! It will be really useful.

In the readme file it says you can have it display variables as the text string by typing V then a number. I was curious so I tried this out - it allows you to use Variable references for the coordinates and color. Like this...

@write_text "NPC1-1", V50, V51, "Go away", , V49

...but it doesn't say you can do that in the readme file. It also doesn't say what you should do if you want to skip a parameter. It seems that , , works. It might be useful to make that clear.

The readme file also doesn't really explain how each command is executed. You state that in order to show the text you use a show picture event, but there are other commands such as @remove_text that executes as soon as the comment event is executed. At first I assumed that in order to execute a command from the comment event you had to follow it up with a show picture event. Again, something that would be useful to make clear.

I'll post any issues I come across as I test it out.

Here's a new vid of my first test:


I added a picture background to the text.
Nice to get some feedback on the actual readme as well.
I might have expressed myself a bit unfortunatly in terms of the picture deal. The "as long as picture is shown" basically means that the picture just need to "exist".

This means that if you've chosen ID 10, then as long as picture with ID 10 exists on the map (after a single show picture call), all the plugin commands will take effect.
This is until you erase picture 10, or leave the map (which automatically erases the picture, unless you're using ID's above 1000).

And yeah, I should probably have mentioned more explicitly that you can use V for variable parameters for all of the parameters which take a number. This actually applies to every plugin which acts upon comments by taking numbers as parameters.
it's possible to use VV as a pointer as well.

As for the skipping a parameter, that was just me forgetting to fill in which parameters are optional, which is pretty much only the colour and "fixed" parameter of the @write_text command.
Technically, the change text will also work without applying the number, but there seem to be a bug with the dynRPG when it takes a text string as the last parameter (extra characters might or might not appear). Ending it with a number, or simply "end" (like in the demo), will fix the problem.