[Ohrrpgce] Game data

Ralph Versteegen teeemcee at gmail.com
Mon Nov 24 20:38:12 PST 2008


Yes exactly, Mike was planning to allow people to import xml files. An
internal editor would also be in order. A pity editedit is meant to
work by code generation, otherwise it could be used to create custom
data editors.

If anyone can remember a few years back to 'Feature Request: External
File Manipulation':
http://rpg.hamsterrepublic.com/bugzilla/show_bug.cgi?id=248
I wanted to allow people to read and write with scripting arbitrary
(binary?) lumps in RPG files and saved games (assuming SAV is first
replaced). I still think this is a good idea, just replace 'binary'
with 'RELOAD'. Custom savegame data, both per-save and per-game (such
as a high score list) would be very nice. Actually, that's strange, I
never commented on the bug.

2008/11/25 James Paige <Bob at hamsterrepublic.com>:
> I don't know if you have been following the mailing list discussion, but
> Mike is working on a binary XML-like format for arbitrary data callled
> RELOAD. We will be using RELOAD format for various purposes as we see
> fit, but one of those possible uses is to allow you to add arbitrary
> free-form data to your game that you can manipulate with plotscripting.
> It think it is pretty much exactly what you are looking for.
>
> ---
> James
>
> On Mon, Nov 24, 2008 at 10:55:15AM -0800, Adam Perry wrote:
>> Okay, this is a thought-in-process, so bear with me and please tack on
>> your suggestions.
>>
>> As plotscripting becomes more advanced, the things we can do with it
>> also become more advanced. Right now, I'm writing a "total remake"
>> script that will hopefully allow users to easily create Dragon
>> Quest-style battles. One of the largest obstacles in doing so is the
>> lack of interoperability between the game file and the script. I'd
>> like to be able to reference arbitrary internal game data from the
>> script, but currently the only way to store that arbitrary data is in
>> textbox format.
>>
>> Let's take a simpler (albeit fictional) example. Suppose I have a quiz
>> game where I display a question and four randomly-sorted answers. I
>> can store all the text for these in textboxes, and it sort of makes
>> sense in this context, since that's all textual data that requires
>> little processing. However, suppose I want to create a game around it,
>> one that uses dialogue. Initially, I decide that I'll reserve the
>> first 100 textboxes for questions and the rest for dialogue, but it
>> later becomes obvious that 100 questions was insufficient. My script
>> becomes hackish because I'm intermingling two types of data.
>>
>> In the case of the DQ scripts, it's a lot of data to store. Here's a
>> sample text box storing data for an attack:
>>  Slow                                // name
>>  ${S0} fires a laser at ${S1},       // description
>>  cutting ${S4} speed in half!        // desc cont'd
>>  S5 I6 P13 vi                        // appearance, whatever
>>  A0 %50 SS e                         // cut one enemy's Spd by 50%
>>  P10                                 // this costs 10% of max PP
>>  FU D                                // fail versus undead, don't display damage
>>                                      // no chaining, either
>>
>> Now, this is functional to be sure, and you might even be able to make
>> out what the abbreviations mean in this case. But it's very ugly.
>>
>> Here's what I'm proposing: an "Extra Data" editor. Something that can
>> be accessed and perhaps altered via plotscripting. You'd be able to
>> set up sets of data -- in the other example, I might set up a
>> "questions" data type that consisted of five strings that I'd call
>> "question, answer A, answer B, answer C, answer D." I could then fetch
>> them via plotscripting:
>>
>> question id := random(0, max question)
>> get game data string (game data:questions, game
>> data:questions:question, question id, 0)
>> get game data string (game data:questions, game data:questions:answer
>> a, question id, 1)
>> get game data string (game data:questions, game data:questions:answer
>> b, question id, 2)
>> get game data string (game data:questions, game data:questions:answer
>> c, question id, 3)
>> get game data string (game data:questions, game data:questions:answer
>> d, question id, 4)
>>
>> More generally,
>> get game data (data bank, data field, entry id) returns an integer
>> get game data string (data bank, data field, entry id, string id) sets
>> string #string id to the appropriate value
>>
>> Maybe "set game data" functions as well, but altered data wouldn't be
>> able to be saved (at least not in the current SAV format). I'm less
>> concerned about the ability to alter the game data.
>>
>> Does this make sense? I'm sure the idea of arbitrary data types is not
>> foreign to any of the developers, but hopefully I've presented an
>> adequate use case.
>>
>> --
>> "Today is victory over yourself of yesterday; tomorrow is victory over
>> lesser men" -Miyamoto Musashi.
>> _______________________________________________
>> Ohrrpgce mailing list
>> ohrrpgce at lists.motherhamster.org
>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>
>>
> _______________________________________________
> Ohrrpgce mailing list
> ohrrpgce at lists.motherhamster.org
> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>



More information about the Ohrrpgce mailing list