Single Player
Moderator: Moderators
Single Player
Right now there's an underlying theme among plans for spring 0.75, that skirmish AIs can handle everything new but they're not going to because they're designed for OTA game mechanics.
This is horse sh*t.
I made the second working skirmish AI, I've spoken with, worked with, and read through the code of the other developers. I'm the longest running active AI programmer in this community, and enver have I been more apalled or insulted by this attitude.
Modders seem to ahve no qualm with taking a grenade, pulling the pin, and obliterating their single player support in one foul swoop. Custom game economics, putting unit morphing as a critical part of game mechanics, intense reliance on ammo resupplies.
You're all underestimating single player, and your all udnerestimating the AIs. I could code a few tweaks that would allow people who sued lua mechanics to use them in toolkit, btu I cant ebcause there's no way for NTai to use these things even if ti was specially designed from the ground up to use just those features.
Its impossible for an AI to use units morphing via lua, not because the AI cant handle that sor tog gameplay, but because the AI cannot do it. Its like being told to type without using any part of your body to do it, including telling somebody else todo it. There's no CMD_MORPH command for AIs, there's no AICallback::Morph(unitid); there's not even a simple way of telling a lua widget "hello" or even passing ones and zeros.
This community is NOT a multiplayer only community. Single player is not a niche to be played around with. Removing singleplayer can hugely damage your mods popularity, and is one of the underlying causes of the lack of popularity non TA mods have. Nanoblobz for example is played in the lobby every few months for half an hour, the rest fo the time its offline tests by new players. This is how people usually test mods, they start an AI game and see how it plays. If you neglect AI, you're taking a sledge hammer to your game.
We're in a genre of gaming were most battles involve skirmish AIs offline. The reason we have so many noobs in the lobby as we do is because there's no clear path to singleplayer for them, and most green battles are locked and private, people playing singleplayer games with AIs.
Right now showing player flags in a lua script and fancy graphics, is a higher priority than an AI community and a skirmish AI. I sincerely hope this changes. I do not have the encessary tools or knowledge to patch this myself. I am not the only person in this community, and this issue is too large to simply ignore. You cant justify dealing huge blows to spring by saying "go learn yourself you lazy b*stard, waiting for other people to do your work for you".
This is horse sh*t.
I made the second working skirmish AI, I've spoken with, worked with, and read through the code of the other developers. I'm the longest running active AI programmer in this community, and enver have I been more apalled or insulted by this attitude.
Modders seem to ahve no qualm with taking a grenade, pulling the pin, and obliterating their single player support in one foul swoop. Custom game economics, putting unit morphing as a critical part of game mechanics, intense reliance on ammo resupplies.
You're all underestimating single player, and your all udnerestimating the AIs. I could code a few tweaks that would allow people who sued lua mechanics to use them in toolkit, btu I cant ebcause there's no way for NTai to use these things even if ti was specially designed from the ground up to use just those features.
Its impossible for an AI to use units morphing via lua, not because the AI cant handle that sor tog gameplay, but because the AI cannot do it. Its like being told to type without using any part of your body to do it, including telling somebody else todo it. There's no CMD_MORPH command for AIs, there's no AICallback::Morph(unitid); there's not even a simple way of telling a lua widget "hello" or even passing ones and zeros.
This community is NOT a multiplayer only community. Single player is not a niche to be played around with. Removing singleplayer can hugely damage your mods popularity, and is one of the underlying causes of the lack of popularity non TA mods have. Nanoblobz for example is played in the lobby every few months for half an hour, the rest fo the time its offline tests by new players. This is how people usually test mods, they start an AI game and see how it plays. If you neglect AI, you're taking a sledge hammer to your game.
We're in a genre of gaming were most battles involve skirmish AIs offline. The reason we have so many noobs in the lobby as we do is because there's no clear path to singleplayer for them, and most green battles are locked and private, people playing singleplayer games with AIs.
Right now showing player flags in a lua script and fancy graphics, is a higher priority than an AI community and a skirmish AI. I sincerely hope this changes. I do not have the encessary tools or knowledge to patch this myself. I am not the only person in this community, and this issue is too large to simply ignore. You cant justify dealing huge blows to spring by saying "go learn yourself you lazy b*stard, waiting for other people to do your work for you".
- 1v0ry_k1ng
- Posts: 4656
- Joined: 10 Mar 2006, 10:24
I think the point here is that LUA features have no interface with Skirmish AI, and we either need to patch for that, or not expect both to work.tombom wrote:Make your AI more customisable maybe. A game like Spring which is mainly multiplayer shouldn't have additional features cut out just because your AI can't handle them well enough.
Lordmatt, tombom, pelase read the post again very carefully.
AIs are fine with lua. The problem is not that they arent customizable. We have the most customizable AIs in the entire RTS genre save for scripted AIs.
The problem is that there's no way of an AI and a lua feature to communicate.
Its fine that you've just wrote a lua script that allows units to transform, but how do we let the AI do this? We could always just send a message to lua from the AI asking todo it for us, oh wait we cant do that. Well we could set up a pool of strings which lua would read and then interpret as the message oh wait we cant do that.
And again, I am not writting a patch for this for the following reasons:
- I am unable to compile spring in mingw32 atm
- My mingw32 debugger doesnt work either
- I have no svn client atm
- Visual studio 2005 builds of spring refuse to work with any AIs and usually crash anyway
- Ubuntu doesnt like my usb wifi, and my PC doesnt have a pcmia slot for the one it does like
- My laptop with ubuntu cant run spring bcause it has a 2MB gfx card and a 440Mhz cpu
- NTai development
- AFLobby development
- A Maths coursework about vectors and matrixes
- A Software engineering coursework I have yet to start due in two weeks
- A Computer architecture exam a week today
- A Computer games enginering exam 2 weeks today
- I dont know enough about lua programming
- I dont know how trepan has bound lua to spring very well
- I dont understand the code that sits between the lua API and trepans widget system
- I understand even less about the code between the API and the mod rules system.
- Trepan is always hostile towards me so I cant ask him for help anyway.
- The lua API internals are constantly changing as trepan commits more and more stuff.
I have neither the time nor the resources todo this at the moment. Maybe in 2 months when I've managed to strike out the above list I can start writting patches but not now.
AIs are fine with lua. The problem is not that they arent customizable. We have the most customizable AIs in the entire RTS genre save for scripted AIs.
The problem is that there's no way of an AI and a lua feature to communicate.
Its fine that you've just wrote a lua script that allows units to transform, but how do we let the AI do this? We could always just send a message to lua from the AI asking todo it for us, oh wait we cant do that. Well we could set up a pool of strings which lua would read and then interpret as the message oh wait we cant do that.
And again, I am not writting a patch for this for the following reasons:
- I am unable to compile spring in mingw32 atm
- My mingw32 debugger doesnt work either
- I have no svn client atm
- Visual studio 2005 builds of spring refuse to work with any AIs and usually crash anyway
- Ubuntu doesnt like my usb wifi, and my PC doesnt have a pcmia slot for the one it does like
- My laptop with ubuntu cant run spring bcause it has a 2MB gfx card and a 440Mhz cpu
- NTai development
- AFLobby development
- A Maths coursework about vectors and matrixes
- A Software engineering coursework I have yet to start due in two weeks
- A Computer architecture exam a week today
- A Computer games enginering exam 2 weeks today
- I dont know enough about lua programming
- I dont know how trepan has bound lua to spring very well
- I dont understand the code that sits between the lua API and trepans widget system
- I understand even less about the code between the API and the mod rules system.
- Trepan is always hostile towards me so I cant ask him for help anyway.
- The lua API internals are constantly changing as trepan commits more and more stuff.
I have neither the time nor the resources todo this at the moment. Maybe in 2 months when I've managed to strike out the above list I can start writting patches but not now.
Indeed the AI devs are not as praised as they should.
I for instance was noob in a time the AI couldn't do much more then getting a +10 metal in an hour, and that was because they DT's them self in.*
Look at the AI now, we have full glory AI who gives a goof fight. who poses all aspects of the games and learn from their mistakes.
We should not go to much forward with one thing when the rest isn't able to keep up. The AI devs ask for an AI interface for LAU. I surly hope someone can give them that. We should not lose their efforts.
If someone thinks Alantai yells around, I will tell you it's highly necessarily to get anything going around here.
O hail Alantai!
'about your long list of reason you cannot make a patch yourself. you could just go for: I'm busy with tons of stuff and so are the devs. And I don't understand springs' LUA code good enough. it's more suptle, and I think you made you're point already :)
*this is not true of course, but the AI were very young
I for instance was noob in a time the AI couldn't do much more then getting a +10 metal in an hour, and that was because they DT's them self in.*
Look at the AI now, we have full glory AI who gives a goof fight. who poses all aspects of the games and learn from their mistakes.
We should not go to much forward with one thing when the rest isn't able to keep up. The AI devs ask for an AI interface for LAU. I surly hope someone can give them that. We should not lose their efforts.
If someone thinks Alantai yells around, I will tell you it's highly necessarily to get anything going around here.
O hail Alantai!
'about your long list of reason you cannot make a patch yourself. you could just go for: I'm busy with tons of stuff and so are the devs. And I don't understand springs' LUA code good enough. it's more suptle, and I think you made you're point already :)
*this is not true of course, but the AI were very young
Yeah basically I was thinking that you could do that from some customised AI config or something but I'd forgotten that you couldn't actually access LUA from the AI interface. Sorry if I came over as a dick.AF wrote:The problem is that there's no way of an AI and a lua feature to communicate.
Its fine that you've just wrote a lua script that allows units to transform, but how do we let the AI do this? We could always just send a message to lua from the AI asking todo it for us, oh wait we cant do that. Well we could set up a pool of strings which lua would read and then interpret as the message oh wait we cant do that.
Something like
void IAICallback::SendLua(const char* c);
Which would send a string, would be enough. This way I can add a new keyword to toolkit which allows modders to tell NTai to send a string to lua when it reaches that keyword, and then the modder could change whatever needs changing lua side to respond to that string.
Single player is Core gameplay, yet it is considered a low or even a none priority. This is of HUGE relevance. A missing function which could possibly take 20 lines of code, not being implemented in v0.75, could make 100,000+ lines of code obsolete and useless. It could demotivate some AI makers so badly that they simply give up, something we cant afford right now.
What some people hail as the crowning glory of the next spring release is what has the potential to drive away the biggest number of users and alienate an entire sub community who have collectively given thousands of hours of free time and effort over several years.
AI makers put masses of effort into their creations, they're generally undervalued, and their AIs underestimated and unappreciated. Single player is an immense part of this genre, you cant ignore it.
void IAICallback::SendLua(const char* c);
Which would send a string, would be enough. This way I can add a new keyword to toolkit which allows modders to tell NTai to send a string to lua when it reaches that keyword, and then the modder could change whatever needs changing lua side to respond to that string.
Single player is Core gameplay, yet it is considered a low or even a none priority. This is of HUGE relevance. A missing function which could possibly take 20 lines of code, not being implemented in v0.75, could make 100,000+ lines of code obsolete and useless. It could demotivate some AI makers so badly that they simply give up, something we cant afford right now.
What some people hail as the crowning glory of the next spring release is what has the potential to drive away the biggest number of users and alienate an entire sub community who have collectively given thousands of hours of free time and effort over several years.
AI makers put masses of effort into their creations, they're generally undervalued, and their AIs underestimated and unappreciated. Single player is an immense part of this genre, you cant ignore it.
I am not asking the modder to remove the scripts, I'm asking for the engine to let AIs interact with them
KDR, what you think I'm saying and what I am actually saying are so far apart you'd need warp drive to get from one to the other.
The mod doesnt need changing, its fine
The AI doesnt need changign its fine
But the engine does let the two talk together, it does need changing, it is not fine, and its a big thing, and its not being taken seriously.
This is the sort of thing entire spring releases where dedicated back in the days when the SYs where the projct leads before SJ left. There were several releases that served no purpose but to fix the AI interface which was broken in a new release earlier that day.
Fnordia and SJ had no prior warning and went to work immediatly and re-released. Here we are and we've currently used up several months of prewarning with the only answer being do it yourself it isnt a priority. This is not acceptable.
I am confident that whatever needs to be done wont take longer than an hour, and that more complex additions have been made that do trivial things which we can argue are graphical gimmicks.
KDR, what you think I'm saying and what I am actually saying are so far apart you'd need warp drive to get from one to the other.
The mod doesnt need changing, its fine
The AI doesnt need changign its fine
But the engine does let the two talk together, it does need changing, it is not fine, and its a big thing, and its not being taken seriously.
This is the sort of thing entire spring releases where dedicated back in the days when the SYs where the projct leads before SJ left. There were several releases that served no purpose but to fix the AI interface which was broken in a new release earlier that day.
Fnordia and SJ had no prior warning and went to work immediatly and re-released. Here we are and we've currently used up several months of prewarning with the only answer being do it yourself it isnt a priority. This is not acceptable.
I am confident that whatever needs to be done wont take longer than an hour, and that more complex additions have been made that do trivial things which we can argue are graphical gimmicks.
Sounds like a junior job then, someone make a patch?
I don't think it's *that* bad, even if 0.75 doesn't have this the possibly b2 has it. It's not that *poof* once 0.75 is released suddenly all mods need LUA for like all their gameplay mechanics.
(For example there are still only 3 single player missions (for NOTA by Thor) on UF while it has been possible to make them for quite a few releases. This suggests modders either lack time/skill, or aren't interested in SP. I'd guess the first though.)
And I guess you're right yeah that rts/ExternalAI doesn't really have a maintainer at this moment, so I guess someone should step up?
I don't think it's *that* bad, even if 0.75 doesn't have this the possibly b2 has it. It's not that *poof* once 0.75 is released suddenly all mods need LUA for like all their gameplay mechanics.
(For example there are still only 3 single player missions (for NOTA by Thor) on UF while it has been possible to make them for quite a few releases. This suggests modders either lack time/skill, or aren't interested in SP. I'd guess the first though.)
And I guess you're right yeah that rts/ExternalAI doesn't really have a maintainer at this moment, so I guess someone should step up?
Last edited by Tobi on 26 Apr 2007, 22:21, edited 2 times in total.
- Forboding Angel
- Evolution RTS Developer
- Posts: 14673
- Joined: 17 Nov 2005, 02:43
http://spring.clan-sy.com/wiki/Mission_developmentForboding Angel wrote:Tobi, I have yet to see any clear AND decisive info on how to make scripted missions. And I spent a good deal of time looking as well.
But yeah we need documentation writers too, since basically nothing is documented properly IMHO. (Well maybe some stuff that hasnt changed for years has crystalized out on the wiki.)
If I had time I would love to get into missions. I tried swiftly once. I was able to, well, get a chosen map and mod going on.
The is quite little documentation, but there is enough for a goro to figure out a mission and write nice documentation from the mission maker's point of view. Sma ehtings have happend for map, unit and mod making.
Sadly, I lack the time now. as always.
ps: I just say, there are people very interested in single player missions.
The is quite little documentation, but there is enough for a goro to figure out a mission and write nice documentation from the mission maker's point of view. Sma ehtings have happend for map, unit and mod making.
Sadly, I lack the time now. as always.
ps: I just say, there are people very interested in single player missions.