Avlis Team cracks the persistance barrier with real-time dat
Moderator: Event DM
-
- World Advisor, Co-founder
- Posts: 15149
- Joined: Fri Sep 14, 2001 9:48 pm
- Timezone: GMT-5
- Contact:
Avlis Team cracks the persistance barrier with real-time dat
Who needs to wait for Bioware? Five days ahead of Bioware?s database connectivity announcement, the Avlis Team went into a secret
closed-beta test. In the months since Neverwinternights (NWN) went gold, the elusive goal of true
persistence has been all but achievable. The beginning of that beta test was to finally push that
effort over the edge.
We are happy to announce to the NWN Community that the Avlis Team has developed a real-time Open
Database Connectivity (ODBC) persistence system which is now undergoing internal-beta testing.
Unlike current systems, which utilize either tokens to hold information or creatively read the
log file and re-compile it into the module, the Avlis Persistence System (APS) and the underlying
NWN Extender (NWNX) read information from a database on the fly and change special local variables
inside NWN in real-time. This revolutionary feat was accomplished by Avlis Team Member Papillon, a
NWN community contributor and resident Avlis Team genius.
In short, the NWNX works by running the NWN server application as a child process and tracking some
special local variables that are set in game. It uses no hakpaks, and the only in-game NWN modification
necessary is the addition of either the scripts for the APS, or your own custom modified SQL
functions. Whenever a script wants to generate a SQL query, it calls our functions and the Extender
pulls the query out of the memory of the NWN server. It then passes it to the database, and writes
the result of the query back into the memory of the server. The database has been tested with Microsoft
Access and MySQL so far. Conceivably, any database with a decent ODBC driver will work. Also, because
of the nature of ODBC logistics, multiple servers can be linked up to one database file to produce
100% reliable cross- server persistence. A variable can be set on one server and checked on another.
The NWNX application takes up nearly 0% CPU usage and it adapts to internal changes in the NWN server
application as they occur. It does not depend on a specific version of the server (1.27 as of this
writing) and thus will work with upcoming releases, too. We have a version for Windows NT/XP and plan
to implement a Linux port of NWNX after the initial release.
Another useful feature of NWNX is the ability to use result sets in a query. This means that for some
queries it is possible to send back more than one piece of information to the NWN server. A good
example of where this would be useful is persistent chests. A normal chest?s contents are wiped out on
server restart. With NWNX, items in the chest can be set as local persistent objects on the chest.
When someone opens the chest, a single open chest query is made and all the objects inside the chest
are returned in the query. Again, this is just one example of what can be done with this program.
This technology opens up many possibilities for persistent worlds in the NWN Community. The number of
possible offshoot ideas are limitless.
Papillon and the Avlis Team will release this software to the community and continue to develop and
improve it. The release will occur after the internal beta-testing is completed. We have many ideas
of our own about what we can do next, now that the possibilities for NWN have just been blown wide open.
closed-beta test. In the months since Neverwinternights (NWN) went gold, the elusive goal of true
persistence has been all but achievable. The beginning of that beta test was to finally push that
effort over the edge.
We are happy to announce to the NWN Community that the Avlis Team has developed a real-time Open
Database Connectivity (ODBC) persistence system which is now undergoing internal-beta testing.
Unlike current systems, which utilize either tokens to hold information or creatively read the
log file and re-compile it into the module, the Avlis Persistence System (APS) and the underlying
NWN Extender (NWNX) read information from a database on the fly and change special local variables
inside NWN in real-time. This revolutionary feat was accomplished by Avlis Team Member Papillon, a
NWN community contributor and resident Avlis Team genius.
In short, the NWNX works by running the NWN server application as a child process and tracking some
special local variables that are set in game. It uses no hakpaks, and the only in-game NWN modification
necessary is the addition of either the scripts for the APS, or your own custom modified SQL
functions. Whenever a script wants to generate a SQL query, it calls our functions and the Extender
pulls the query out of the memory of the NWN server. It then passes it to the database, and writes
the result of the query back into the memory of the server. The database has been tested with Microsoft
Access and MySQL so far. Conceivably, any database with a decent ODBC driver will work. Also, because
of the nature of ODBC logistics, multiple servers can be linked up to one database file to produce
100% reliable cross- server persistence. A variable can be set on one server and checked on another.
The NWNX application takes up nearly 0% CPU usage and it adapts to internal changes in the NWN server
application as they occur. It does not depend on a specific version of the server (1.27 as of this
writing) and thus will work with upcoming releases, too. We have a version for Windows NT/XP and plan
to implement a Linux port of NWNX after the initial release.
Another useful feature of NWNX is the ability to use result sets in a query. This means that for some
queries it is possible to send back more than one piece of information to the NWN server. A good
example of where this would be useful is persistent chests. A normal chest?s contents are wiped out on
server restart. With NWNX, items in the chest can be set as local persistent objects on the chest.
When someone opens the chest, a single open chest query is made and all the objects inside the chest
are returned in the query. Again, this is just one example of what can be done with this program.
This technology opens up many possibilities for persistent worlds in the NWN Community. The number of
possible offshoot ideas are limitless.
Papillon and the Avlis Team will release this software to the community and continue to develop and
improve it. The release will occur after the internal beta-testing is completed. We have many ideas
of our own about what we can do next, now that the possibilities for NWN have just been blown wide open.
"Truth has no form."
--Idries Shah
--Idries Shah
Wow
I am proud to be a small part of such a ground breaking group. A well deserved BRAVO to the developers! I imagine that many other persistant worlds will want to use this technology when it is released.
- Duquesne
- Duquesne
This sounds great. Even with Bio DB functionality right around the corner, it seems they are going to make a completely internal database. That is great but it still leaves the problem that there is no way to get information into the server from the outside world.
The big question I have is: will it work on Linux?
The big question I have is: will it work on Linux?
Um...boss, I think Suntzu was saying that the Bioware DB does not solve the problem of getting info. in from the outside, but OURS does. I might be wrong but...well, no...I don't think I'm wrong. heheSuntzu it DOES solve the problem of getting information from the outside world into the server. Have you read all of our press releases?
-
- Squire of Babble
- Posts: 44
- Joined: Fri Dec 27, 2002 9:45 pm
Congrats on the system
I too am greatful to be a member of a group that is constantly trying to improve the game play for it's members .In fact all the people around the globe that play the game can benefit from advances such as these. Avlis is a wonderful place to game and I have made some good friends online here and these new additions are going to make it that much more enjoyable, now if you guys could just come up with a way to keep me from dying WAAAAAAY out in the middle of no where...you would really have something
Thank you again for all of your hard work
Draiden

Draiden
Yeah, I meant the Bio BD would not allow access to info in the outside world, but yours will. Sorry for being unclear.
I really want this system on my PW, so if you need any help with the linux port or testing on linux, please send an e-mail to soul@soulforge.telmaron.com.
I really want this system on my PW, so if you need any help with the linux port or testing on linux, please send an e-mail to soul@soulforge.telmaron.com.
greetings
Hello,
A friend of mine posted a link to this on our forums and thought I would check it out.
We run a PW NWN server through Gamehosts.net and have been working on Persistant storage for some time now and have come close but currently we are using a token system.
I just wanted to congradulate you guys on a job well done. If I am out of place posting here my apologies.
Peace.
Spoondog
A friend of mine posted a link to this on our forums and thought I would check it out.
We run a PW NWN server through Gamehosts.net and have been working on Persistant storage for some time now and have come close but currently we are using a token system.
I just wanted to congradulate you guys on a job well done. If I am out of place posting here my apologies.
Peace.
Spoondog
-
- Newbie
- Posts: 5
- Joined: Thu Jan 23, 2003 9:42 pm
- Location: Midwest, USA
- Contact:
From what I understnad you guys are in beta testing. I am currenty working on developing my own PW (ha, who isn't these days).
But, I also happen to write RDMS based apps for a living. Yeah I know dang SQL!
Anyways, if you're looking for another beta tester, who will already has an idea of how to use this system, I will put your system through the hoops.
Since I've heard this announcement, I've been making notes on how I intend on using it.
Please let me know if you're interested in another tester.
But, I also happen to write RDMS based apps for a living. Yeah I know dang SQL!

Anyways, if you're looking for another beta tester, who will already has an idea of how to use this system, I will put your system through the hoops.
Since I've heard this announcement, I've been making notes on how I intend on using it.
Please let me know if you're interested in another tester.
-
- Newbie
- Posts: 5
- Joined: Thu Jan 23, 2003 9:42 pm
- Location: Midwest, USA
- Contact:
Great!! Since the announcement this has consumed a good deal of my brain's brandwidth.Originally posted by Orleron
No need, Tim. We're close to release, and you'll have it in your hands sooner than you think.
Not only am I interested to see what can be done with it, but I am really interested to see how you have implemented it.