PDA

View Full Version : Database-side Files


Jarin
03-17-2004, 02:12 PM
Hope this is the right place to put this, but I have a suggestion that is highly possible, I just don't have the skills needed to do it. We had a database in 0.4.4 where the Quests and Spells were both Database side, although it needed some work. The tables were separated into around 20 columns per row, each column being a space for a quest command. It was much quicker and smoother than the .pl or .qst system, and the npcs tended to respond a lot quicker. As for the spells, I know that's possible as well and wouldn't take a lot of code change, at least I don't think so, but would make spell editing lots easier, and also the convenience of not having to download a new spells_us/en.txt file. Just a suggestion. Bring the flames.

smogo
03-17-2004, 11:21 PM
Could you detail what the tables where used for ? I don't know about 0.4.4, so i'm just curious.

As for quests, was it that each event was mapped to a column, so when an event trigger condition was met, the field was fetched, and response was done interpreting this field ?
If so, was the field a reference to some code, or code itself (macro language, x86 code, perl source, ...)

As for spells, using Mongrel's spell editor is easy, but i admit it requires to organize lists in general and, though elegant and efficient imho, it isn't convenient to just say 'NPC 1234 uses spell 4567'.
Did i misunderstand ? Is it that above, thus making a 'flat' model of the spell lists, or do you mean using a table to elect what spell to use in particular condition (e.g column low_hp points to the spell the NPC will cast when low hip point is met, column 'nuke', ...) ?

About performance, what in 0.4.4 made efficiency so good ? Basically, the operations were the same (fetch / load quest when the NPC type is poped, then run it each time trigger condition is met).

Sorry if this sounds noob, but again i don't know of 0.4.4, and could not figure out what it's like. However, there might be some improvements to put in actual quests systems, based on old recipes from 0.4.4, so ... just curious.

Jarin
03-18-2004, 04:09 AM
The Quests Table:

We had 23 columns, to be exact, and each called for a certain amount of lines in a perl script that was hosted on our web server. Instead of the files being on a local machine, they were on a dedicated server, making retrieval a lot faster and nearly impossible for any accidents to happen. All in all, it just felt smoother, and it makes things a lot easier when you can do Quests, Items, and NPCs all in one place and increase communication between the three.

The Spells Table:

Yes, it performs the very same functions, but makes it much easier to edit, and also adds some features like Spell Particle Sets, which gives the option to combine spell particle lists to make a more 'magical' effect. It also lets you put more than one effect per spell, such as combining SoW with Virtue. It's just convenience really, but just my opinion.

kathgar
03-18-2004, 09:57 AM
What? How could putting something on a remote webserver.. be FASTER than accessing locally? And you can do all of that will spells just as easily...

smogo
03-18-2004, 09:29 PM
you can do Quests, Items, and NPCs all in one place and increase communication between the three
Try to grab Muuss's quest editor if you don't have it already. It is (was :/) a nice tool that allows to work on quests with all information at hand (item search, spell search, ...). Very convenient imho.

Jarin
03-19-2004, 02:01 PM
Not a 'remote' webserver, but one that's about 4 feet away :D