Quote:
Originally posted by Tyhm
Right, except that it's not.
The code exists, it's just disabled...
|
Still, the point is that you can't
do anything with putbomb. It's disabled in that the server ignores messages from the client saying that it just laid a bomb. You can't use it to affect other players.
Quote:
My primary gripe is that Graal is a good engine, but there's that damn 28k (or whatever) per NPCW limit. Even on G2K2 they were constantly trying to keep the inventory from exploding. I mean, I got ideas for stuff to do with the Graal engine post-retirement, but if I gotta make every level < 50k, < 50 NPCs, and every NPC < 28k, it's not gonna work.
|
Hmm. I wonder if it's possible to construct bigger NPCWs by combining classes like I was doing on Oasis. I never got around to testing if it allowed more size.
Quote:
Ideally, the engine would be stripped down, and every server would be given a publically available General System NPCW, which is invisible on all accounts (it'd be a toweapons -; or something), can be edited however...and it handles all the movement, damage, baddies, map, inventory, whatever, everything that G2K2 had to disable. Then if you don't want anyone using the default movement, you just overwrite that part of the NPC. Or remove it altogether and have your other NPC handle it. Spar rating? All that stuff, poof. Wanna make a classic server? Just use the default. Wanna make a shooter? Totally rewrite the default. No excess code.
|
Sounds okay, but I'd rather just have access to some basic protocols on the server. For example, by default a sword hit could be sent via UDP message index 0, so I could write code on some base server script that says:
if(messageindex==0){
do_my_special_damage_stuff;
}
The clientside slowdown from the redundant code is negligible anyway - the only compelling reason for doing what you suggest is to prevent cheaters invoking code that is meant to be disabled. And by implementing the system above, where every event (meaning
every event, even things like client.strings being set from the client) is processed in a redefinable way by the server, that can be avoided. Because cheaters are only a nuisance if their actions reach the other players.