hmm... real time scripting in games possible....
by Matthew Shapiro · in Torque Game Engine · 04/11/2001 (2:52 am) · 8 replies
now that i think of it (and because my MMORPG is for fun) there might be a way (might have to go into the source tho) to make it so the admins can make scripts and automatically update the game wihtout having it restart... I'll work on this (heh everyone else is working on scripting the game, i'm working on making hte source MM compatable..). Anyway like I said since i'm making my MMORPG for fun you guys also making one will love me ;) Heh I'll release a lot of stuff that we make to help you guys out, for credit tho :P like admin tools, and source code things for MMORPGs..
sorry i'm like going everywhere, it's 5am, but i need some theory on how this would work! the live update thing. I know sphere does it with their player shard but i'm not sure how exactly it works or would work. the only thing I could think of is to have another server hold all the data while the server restarts. Any ideas on the live update?
sorry i'm like going everywhere, it's 5am, but i need some theory on how this would work! the live update thing. I know sphere does it with their player shard but i'm not sure how exactly it works or would work. the only thing I could think of is to have another server hold all the data while the server restarts. Any ideas on the live update?
#2
--Timothy "Drake" Ford
"Throughout human history, we have been dependent on machines to survive. Fate, it seems, is not without a sense of irony."
04/19/2001 (1:29 pm)
I'm a little unclear on the extent of the "on the fly" script loader for v12. Take, for example, a situation where I'd like to modify the weapon characteristics of the chaingun while playing/hosting my own LAN game of Tribes 2. It seems that if I modify scripts/weapons/chaingun.cs, and exec() it, I get the console message: compiling chaingun.cs blah blah, loading compiled script blah blah, but no changes are made. I'm assuming that no changes are appearant because the changes I made to the chaingun were done in the datablock shapeBaseImageData. Datablocks on server and client side won't be synchronized while I'm in the middle of a match. How do I allow the updated datablock to be recognized without restarting Tribes2?--Timothy "Drake" Ford
"Throughout human history, we have been dependent on machines to survive. Fate, it seems, is not without a sense of irony."
#3
04/19/2001 (4:52 pm)
SWEET less coding for me lol
#4
04/20/2001 (3:24 pm)
You have to call transmitDataBlocks on all the client connection objects to sync up modified data blocks. The default scripts only call this function in between missions and I haven't played much with updating the datablocks while a mission is in progress. There may be some issues.
#5
It updates some of the dataBlock changes, but has also resulted in really bizare behavior. For example, I changed some of the properties of the chaingun, and issued the transmitDataBlock function. The chaingun took the changes, but also included some of the properties I had removed from the chaingun.cs file long ago. Perhaps that information was still saved in the complied .cs.dso file. Anyhoo, the transmitDataBlock function is useful for making tiny numeric changes from time to time.
-- Timothy "Drake" Ford
04/23/2001 (2:32 pm)
I've tried transmitDataBlocks as a member function to a client object. The interface for tribes2 LAN game, where the solo host has client ID 3311 (usually) is 3311.transmitDataBlocks(1);It updates some of the dataBlock changes, but has also resulted in really bizare behavior. For example, I changed some of the properties of the chaingun, and issued the transmitDataBlock function. The chaingun took the changes, but also included some of the properties I had removed from the chaingun.cs file long ago. Perhaps that information was still saved in the complied .cs.dso file. Anyhoo, the transmitDataBlock function is useful for making tiny numeric changes from time to time.
-- Timothy "Drake" Ford
#6
08/18/2006 (3:41 am)
I just wanted to point out that the reason some of the things you removed had stayed might be because you deleted the whole line instead of making it value = "". It happens a lot with triggers, when you remove the ticktrigger function but it keeps using it.
#7
Wow.
This may be the oldest thread ressurection in Garage Games history.
;)
08/18/2006 (4:32 am)
Nick,Wow.
This may be the oldest thread ressurection in Garage Games history.
;)
#8
08/18/2006 (5:34 am)
Realtime .NET scripting is very very powerful, and fun. :)
Torque Owner Tim Gift