![]() ![]() |
Jul 23 2008, 06:26 AM
Post
#1
|
|||
![]() Hive Queen Group: Constellation Posts: 1,238 Joined: 10-October 02 From: Christchurch, New Zealand Member No.: 1,471 |
Was just randomly pondering the new engine, and had a vague thought waft through my head:
Now that we have a shiny new engine, will you guys be moving even more stuff into LUA-controlled territory? For example, all that VGUI stuff? Console commands? Client-side scripts? If there's anything I've learned from WoW, it's that a greatly customisable client front-end is extremely cool and useful. --------------------
|
||
|
|
|||
Jul 24 2008, 08:20 PM
Post
#2
|
|
![]() Beast ![]() Group: Members Posts: 56 Joined: 24-July 08 Member No.: 64,689 |
Yeah It would be nice to have a good level of control with LUA so we can make crazy mods
|
|
|
|
Jul 24 2008, 08:38 PM
Post
#3
|
|
![]() Custim tital ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 6,058 Joined: 29-October 03 From: British Columbia, CA Member No.: 22,097 |
Oh god, I can't wait until the exploit whiners figure out what is possible with lua command scripting. Depending how it's implimented you could quite literally build an aimbot in lua.
-------------------- O_O
|
|
|
|
Jul 24 2008, 09:14 PM
Post
#4
|
|
![]() Sire Group: Playtester Posts: 3,377 Joined: 24-January 02 From: England Member No.: 14 |
From what the guys have been saying all the stuff that is done in C++ in Source mod DLLs is being done in LUA with the Evolution engine. That would be like most of the movement, all the weapons, all the ammo, the classes and abilities, all the HUD/crosshairs, any AI (so the advanced bots they are promising us). As you say sounds like an aim bot would be a piece of cake to put together.
We can be reasonably certain the engine will be able to cope with this, matchmaking only equivalently modded installations. So you'll see a list of "pure" servers, a few for each popular mod and then the odd server that allows a free for all, each type listed separately. You might even get "certified" mods that get listed with the same level of promotion as "pure" servers. I am more concerned with how fast LUA scripts will perform in the high performance world of twitch FPS gaming. C++ is used in source because it is so very quick, even amongst compiled languages. Replacing all that C++ with LUA worries me that it's going to slow down performance. I'm sure LUA is fine for hundreds or even thousands of lines of code, but I can't see it scaling terribly well when it comes to the hundreds of thousands of lines that it will take to implement the NS2 game code. I imagine Flayra will end up shunting some of that back into the engine for Max to optimize, namely the AI for he bots. -------------------- - Marines VS Aliens - Public Beta Download |
|
|
|
Jul 24 2008, 11:30 PM
Post
#5
|
|
![]() Beast ![]() Group: Members Posts: 88 Joined: 2-December 06 Member No.: 58,805 |
I am more concerned with how fast LUA scripts will perform in the high performance world of twitch FPS gaming. C++ is used in source because it is so very quick, even amongst compiled languages. Replacing all that C++ with LUA worries me that it's going to slow down performance. I'm sure LUA is fine for hundreds or even thousands of lines of code, but I can't see it scaling terribly well when it comes to the hundreds of thousands of lines that it will take to implement the NS2 game code. I imagine Flayra will end up shunting some of that back into the engine for Max to optimize, namely the AI for he bots. It's absolutely perfect for the game logic; this is just reacting to events that take place (kills, deaths, tech choices, etc.). In addition, you get the added benefit of not having to deal with null-pointer debugging. The only way Lua could slow things down is if it gets mixed into anything related to the real-time aspects of the game, which I really don't think they're going to do. Even then, Lua is not to be underestimated; it's one of the fastest scripting languages available ( http://shootout.alioth.debian.org/gp4/benc...ll&lang=all ). I have used it to write code that runs every server frame for a Quake2 server (frames occur something like ten times a second), doing admittedly menial tasks like continually updating player positions, but I've noticed little-to-no performance impact. You raise a good point about the client-side stuff. I don't know how much scripting support the client will get, but at the very least, I hope they design a GUI system that presents a front-end that is backed by code at the server. This would allow you to move all that !rtv, !rank, etc. sort of stuff into a nicer pop-up. This would seem to be justified just for the commander's menus, so perhaps we'll see it. I am guessing the client will be kept dumb and will get no support for reflecting on the game world via scripting. This post has been edited by IronFist: Jul 24 2008, 11:32 PM -------------------- |
|
|
|
Jul 25 2008, 04:34 PM
Post
#6
|
|
![]() Game Director, Unknown Worlds Entertainment ![]() ![]() ![]() ![]() ![]() ![]() Group: Super Administrators Posts: 7,487 Joined: 23-January 02 From: San Francisco, CA Member No.: 3 |
Was just randomly pondering the new engine, and had a vague thought waft through my head: Now that we have a shiny new engine, will you guys be moving even more stuff into LUA-controlled territory? For example, all that VGUI stuff? Console commands? Client-side scripts? If there's anything I've learned from WoW, it's that a greatly customisable client front-end is extremely cool and useful. Hey Revenge, long time no type. Yes to all the above. Everything "above" the level of entities and basic player capabilities is in script. All UI, console-commands, client effects (things like build/health circles currently), gamerules, the tech tree (both how it's set up and the tech tree implementation), weapons and just about everything that makes the game "NS" is in script. Want to make a new structure a new alien class? You can do it in Lua. Heck, you could probably make a totally new non-FPS game without too much work. This is one of the things I'm most excited about - seeing what kinds of crazy stuff you guys come up with. To give you an idea, here's a random screenshot of my Decoda showing the names of classes that are currently in NS2:
Attached File(s)
-------------------- |
|
|
|
Jul 25 2008, 04:46 PM
Post
#7
|
|
![]() Yaaar! Group: Playtest Lead Posts: 481 Joined: 11-September 04 From: Bristol, UK Member No.: 31,605 |
Interesting. So potentially we could end up with servers that are running completely different versions of NS2. I know there's talk of using the TF2 style server browser with it being made obvious which servers have been customised... but will this mean that you'd have to learn different ways of playing the same game? I'm not saying this is necessarily a bad thing (variation is fab).
-------------------- |
|
|
|
Jul 26 2008, 12:39 AM
Post
#8
|
|||
![]() Hive Queen Group: Constellation Posts: 1,238 Joined: 10-October 02 From: Christchurch, New Zealand Member No.: 1,471 |
*brain twitch*
Ok, looks like there is a hell of a lot of fun to be had in there... Will a player be able to modify his own client and make it unique from other clients on a server? If so, how far are you going to let us run with this ability? For example could a fanatical gorge lover rebuild his UI around easy access to the structure placing commands (for example, he adds a key that gives him a movable mouse cursor, and a bunch of clickable buttons on his screen for each of his building options)? Could a marine commander with 2 screens cover his 2nd screen with an info panel that displays the status of his marines & structures? In the meantime, I'm gonna go off and daydream about fully functional marine dropships, redeployable turrets and those armor plates on the alien defense chamber actually blocking bullets... --------------------
|
||
|
|
|||
Jul 26 2008, 12:46 AM
Post
#9
|
|
![]() Game Director, Unknown Worlds Entertainment ![]() ![]() ![]() ![]() ![]() ![]() Group: Super Administrators Posts: 7,487 Joined: 23-January 02 From: San Francisco, CA Member No.: 3 |
We've talked about it extensively before and I don't feel like looking up the post but...suffice it to say that we are going to make sure that the "vanilla" unmodified NS2 servers will be completely separate from the servers that have been modified at all. That means you won't be able to modify your client scripts to get a new HUD that gives you extra info and get an advantage over players that haven't modified their setup.
So we're heavily encouraging modding, but we're making sure that the default experience is the unmodified NS2 game. You will always know if you are playing modified or unmodified. Also, I imagine we won't be allowing client-side additional modding even when you're playing some custom community gametype. -------------------- |
|
|
|
Jul 26 2008, 01:20 AM
Post
#10
|
|||
![]() Hive Queen Group: Constellation Posts: 1,238 Joined: 10-October 02 From: Christchurch, New Zealand Member No.: 1,471 |
Sounds good to me, thanks for that. I'll keep on hoping for that client-side additional modding, but wont hold my breath. Looks like there will still be plenty to do for server admins, mappers & the like.
--------------------
|
||
|
|
|||
Jul 26 2008, 01:23 AM
Post
#11
|
|
![]() Dark Queen Group: Constellation Posts: 977 Joined: 10-January 05 From: New York Member No.: 34,654 |
You could probably whitelist a given subset of benign commands, such as a command that moves, acitvates/deactivates, or resizes hud elements.
There's a big difference between modded *gameplay* and modded *interface*. I don't think anyone would object to a function that allowed you to customize the UI, although if you added that feature, you wouldn't need to whitelist it. Still, it seems like it would take less manpower on your team's part to whitelist a function than to add a new feature. -------------------- NS2 Idea Map - Add your next suggestion thread here if you want it to be remembered!
http://nsdojo.net - Covering a wide array of advanced topics on one of the deepest games ever made. "Women aren't intuitive, ... so we would be better off without them surely." --Pheus |
|
|
|
Jul 26 2008, 02:43 AM
Post
#12
|
|
![]() bMarkedForDeletion=true; Group: Constellation Posts: 439 Joined: 20-October 07 From: Canada Member No.: 62,685 |
We've talked about it extensively before and I don't feel like looking up the post but...suffice it to say that we are going to make sure that the "vanilla" unmodified NS2 servers will be completely separate from the servers that have been modified at all. That means you won't be able to modify your client scripts to get a new HUD that gives you extra info and get an advantage over players that haven't modified their setup. So we're heavily encouraging modding, but we're making sure that the default experience is the unmodified NS2 game. You will always know if you are playing modified or unmodified. Also, I imagine we won't be allowing client-side additional modding even when you're playing some custom community gametype. Vendetta Online is an MMOG that has some powerful client side scripting with Lua. You can completely customize your experience from the HUD to the chat interface and create new 'features'. For example you can create a 'proximity' warning that will tell you exactly who has come near your ship rather than just a plain proximity alarm. The developers have however 'hidden' certain functionality from within Lua so players can't create client only add-ons that give them an enormous advantage. So in the instance of NS2 a player could completely modify their HUD to show a countdown between reloads, or perhaps add a percentage of the CC's health or 'mark' locations on their HUD and have the distance to that location show up. They might even be able to add a target-rectangle around visible aliens or an enemy that you attacked (so you won't mix them up with an enemy you didn't attack when you're being rushed). They would not however be able to access the health of another player, display the location of everyone in the map on their HUD or be able to 'cheat'. For Vendetta Online this works out very well, mostly because of what type of game it is, but I think a similar approach could be fashioned for NS2. Summary:
-------------------- I love stripping away commander to soldier relations and turning the game into a run to the hive and click mouse 1, and repeat till victory. While the commander plays his little rts game isolated from the rest of the team. Blog |
|
|
|
Jul 26 2008, 04:47 AM
Post
#13
|
|
![]() Hive Queen ![]() ![]() ![]() Group: Members Posts: 1,512 Joined: 25-December 07 From: Perth, Australia Member No.: 63,250 |
hmm, that target rectangle is a bit iffy though...
-------------------- Give me the fortune, keep the fame.
|
|
|
|
![]() ![]() |
| Lo-Fi Version | Time is now: 2nd September 2010 - 06:20 PM |