I dont understand why the game logic is only coded in lua... Please tell me why.
nSidia
Join Date: 2012-08-15 Member: 155651Members
OK yeah you want people to mod tha game an shi cool cool. But people don't buy games to mod... at least normal people. I don't understand why you cant just have the game coded in a real language like c# along side the lua.
When ever you play in pure stock default ns2 servers your client and the server run on c#. But when u see a neat0o0 modded server and join. Your client starts running off the lua game code. So people can still write there ezpz lemon breezy mods but now.!. If people actually want to play a smooth game. Then they can. Don't tell me its my comp because its not. Im not being rude im just sayin. NS2 could be way better then it is right now. Getting there isn't hard. It just takes some common sense... like not coding the entire game logic in script. I didn't buy this game to play mods. Im tired of taking a huge performance hit just because UWE wants the game to be modder friendly. Im also tired of hearing that its slowly getting better. If you guys would of stuck with the source engine you would of never had this problem to begin with. I have less load on my cpu when im playing arma3 alpha... then with ns2. If its not worth the time then please consider not coding the entire game logic in lua for your next project. Thanks
When ever you play in pure stock default ns2 servers your client and the server run on c#. But when u see a neat0o0 modded server and join. Your client starts running off the lua game code. So people can still write there ezpz lemon breezy mods but now.!. If people actually want to play a smooth game. Then they can. Don't tell me its my comp because its not. Im not being rude im just sayin. NS2 could be way better then it is right now. Getting there isn't hard. It just takes some common sense... like not coding the entire game logic in script. I didn't buy this game to play mods. Im tired of taking a huge performance hit just because UWE wants the game to be modder friendly. Im also tired of hearing that its slowly getting better. If you guys would of stuck with the source engine you would of never had this problem to begin with. I have less load on my cpu when im playing arma3 alpha... then with ns2. If its not worth the time then please consider not coding the entire game logic in lua for your next project. Thanks
This discussion has been closed.
Comments
i don't know about arma3, but ns2 runs better AND looks better than arma2.
ns2 looks better than a lot of games. for me the major headache with performance is that maximum settings (minus AA) and minimum settings seem to have a 10-20 average fps differential. there is no easy 'directx 8 mode' or anything.
Please consider rewriting the entire game for me.
ns2 runs better than... hold on, what about <30 fps in every combat with insane PCs?
As a whole though I have to agree with your post as another average gamer but it is too late to make changes to what has already been decided.
If he had said Java I would have shat myself laughing.
The funny thing is that Java is lightyears ahead of Lua when it comes to speed.
You must have never programmed in your life, that's an insane idea IMHO.
so well have that by wednesday, yeh?
I got better FPS on NS2 then minecraft ironically enough
While in some regards the gist of OP's post has some merit, it's not the massive problem most people make it out to be. In fact, there are still quite a few things UWE can do to provide some fairly significant (realistically speaking) performance gains. Imo, they made a highly risky, but ultimately good choice. NS2/Spark is so modifiable it kind of bakes my brain. History has shown the games that make modding easy have a much longer life-span. Half-Life being an obvious example.
I don't see the irony here considering that Spark is written in C++.
That question can be answered in one word:
jmp
being able to mount the hubble space telescope to your face so you can see an enemy in a far away galaxy doesn't make the game look better.
neither game made shortcuts to prioritize performance. ns2 went for atmosphere with outstanding visuals and arma2 went for geeky simulator stuff.
besides, i only mentioned arma2 because the OP mentioned arma3 and arma3 is just an 'updated' arma2.
Also this performance thing wont solve itself with newer CPUs and stuff because future hardware will more and more use parallelization which is exactly where NS2 sucks at.
So what I'm saying is that if 2 guys at UWE can port the whole logic to c# within say half a year, this could be both the most effective and cheapest way to get rid of this whole performance thing.
Also, I dont think to compare it with arma is any good because arma is magnitudes more complex than NS2. Also, Arma 2 runs quite smoothly on my computer while NS2 lategame fails to do so. You can compare NS2 with games like BF3 and you'll have to agree that BF3 runs considerably faster with consioderably more players.
Also it is completely irrelevant how good NS2 looks, because graphics is NOT the bottleneck.
Also you can't port from Lua to C#, or C++ for that matter. The languages are fundamentally different. It would be complete rewrite. It would introduce new and wonderful bugs. I can't imagine it would take less than 6 months to rewrite the game logic, and then you don't really have any guarantee that it would be faster.
If they had done the whole thing in another language, there's a good chance we'd still be waiting for the game to be released in another couple years time and when it did come out we'd be saying "Aliens Colonial Marines and The War Z were far superior games to NS2!"
Just because it could be written in a more 'efficient' language, it doesn't mean the game would run better. Lower level languages like C/C++ mean increased code complexity, this increases the time to develop (more LOC per function), increases bug-rates, increases testing required, readability (assume bob writes his code and then jim takes over, jim looks at bob's and goes 'holy wtf' and then takes another 5 hours to figure out what b_tt_fun_onos_ride() does), etc.
Just to throw some arbitrarily random numbers out there, there'd easily be 5 hours of work involved compared to every 1 lua hour of work. Over time this means less free content, slower patch releases, and longer to break even on development costs.
For a small team like UWE, using LUA like they did was probably a smart thing to do. All the serious stuff is done in serious language anyway. Anyway, C# is pretty damn high.
Should have gone with Source engine. Still modable and easy to run as Mario64. Would have made for a far larger player base because far more people could actually enjoy playing the game on normal computers. Installed TF2 again last night for fun. While I understand that game isn't quite as graphically demanding and doesn't have quite the GPU pull, I still never dropped below 250FPS with 16x AF and 16x AAQF whatever. On high settings -ambient and AA, I can pull almost 60's late game around a hive if I am lucky.
(By mic issue i mean not being able to turn up voices in game over gameplay sounds) You can kinda do that here, but it's not perfect.