Openapoc: TO REACH OPENAPOC RELEASE 1.0 #3:

Created on 24 Nov 2017  ·  6Comments  ·  Source: OpenApoc/OpenApoc

To be feature complete compared to the Original Game:

  • [ ] 1. Better UnitAI (See the UnitAI thread at the forums)
  • [ ] 2. Battle AI advanced behaviour in evasive and normal mode: using cover, searching for cover, crouching, ducking, crawling, crawling to remain undetected, jumping, throwing grenades, diversionary assaults (false flags), flanking, strafing (both with and without firing weapons) and many others (See UnitAI thread at the forums)
  • [ ] 3. Battle AI taking cover. Evasive Mode. Agents seek safety and cover avoiding any confrontation when sighting an enemy they do not engage with weapons instead choosing to look for safe places to run.
  • [ ] 4. Battle AI: Normal Mode. Agents use cover and engage the enemy with caution.
  • [ ] 5. Battle AI: Aggressive Mode. Agents ignore risks and aggressively seek confrontation.
  • [ ] 6. Battle AI: When agents have wounds they should have penalty to moving and shooting.
  • [ ] 7. Battle AI: Wounded Agents should attempt to use medkits themselves when in cover and if they have both a free hand-slot and a medkit
  • [ ] 8. Battle AI: More intelligent hostile unit attack patterns (crawling under fire, use of smoke grenades, false flags, retreat, regroup etc. See the UnitAI thread at the forums)
  • [ ] 9. Improve the Cityscape AI making it more dynamic in response to threats and relations whilst using it's craft and agents
  • [ ] 10. Improve movement of Aliens within the city, targeting organisations they are trying to infiltrate first, whilst using existing friendly organisations to host alien eggs and chrysalis. In effect, intelligently moving and splitting their forces across the city. See #697
  • [ ] 11. Make alien movement adhere to travel-time restrictions, not just jump them to the target building... They don't have to use people tubes or roads, and can move freely, but they should not jump to the target building. Debug users should be able to see them moving on the map.
  • [ ] 12. Retention of agents assigned to certain vehicles in building and agent assignment screens
  • [ ] 13. Implementation of the full agent name generator (improving where possible to allow male/female/unisex first names and last names for example)
  • [ ] 14. Coloured Text Support

And then, to be a full 1.0 OpenApoc release, we also need:

  • [ ] 15. Creation of a different file format other than XML for storing savegames so that save/loading takes reasonable amount of time - Figure out a better format than Xml for some (or all) our data files #150
  • [ ] 16. Different handling of game data (separation of "rules" and "gamestate", so that for example you can modify a research project in a mod, add that mod to your playthrough mid-game, and not have to lose all progress made on that project, or later remove the project mod, and have the changes reversed but research state persist)
  • [ ] 17. Close all issues relating to Original Game features (OpenApoc issues can be dealt with post 1.0)
  • [ ] 18. Anything else that stops OpenApoc working or improving upon the Original Game functionality
Code Query Enhancement Feature Request Help Wanted Not Yet Implemented Pathfinding Roadmap Verified / Replicated WIP

Most helpful comment

Really, to have a playable OpenApoc, we need ONE THING: AI

That's it. Road vehicles that don't behave appropriately, illegal flyers not spawning, all that is really insignificant, really. It's fluff, it's mostly just ignored or a nuisance (like, you just have to watch those stupid bikes and hovercars maneuvering for five minutes until they finally get shot down so you can continue playing).

It's about core game loop first. When we have core game loop, people can play OpenApoc instead of OG and have full experience they would get from OG in OpenApoc.

And everything except the AI that belongs to the core game loop (funding, proper portal locations) just needs programming hours.

AI, however, is a different case.

We need to either reverse-engineer the OG AI code, to the point where we can understand how it actually works, or we need someone to study the OG AI and understand how it works.

The result would be a document that outlines what do we want to create with the AI. What exactly should it do and how. Basically a programmer's design document, definition of what should be implemented.

And then we can get to implementing it. The framework should be there, I have coded a pretty long-stretching AI system that should allow to implement any additional logic into it. So then it would be implement, and optimize so it works quickly enough (like, it would most likely need to do a lot of tracing shots, where it calculates safe spots to hide behind or escape from, and that could get pretty taxing if not optimized).

Just need someone to really dedicate hours either into reverse-engineering or into playing with the OG under different scenarios and studying how does AI actually behave under different conditions and settings

All 6 comments

Really, to have a playable OpenApoc, we need ONE THING: AI

That's it. Road vehicles that don't behave appropriately, illegal flyers not spawning, all that is really insignificant, really. It's fluff, it's mostly just ignored or a nuisance (like, you just have to watch those stupid bikes and hovercars maneuvering for five minutes until they finally get shot down so you can continue playing).

It's about core game loop first. When we have core game loop, people can play OpenApoc instead of OG and have full experience they would get from OG in OpenApoc.

And everything except the AI that belongs to the core game loop (funding, proper portal locations) just needs programming hours.

AI, however, is a different case.

We need to either reverse-engineer the OG AI code, to the point where we can understand how it actually works, or we need someone to study the OG AI and understand how it works.

The result would be a document that outlines what do we want to create with the AI. What exactly should it do and how. Basically a programmer's design document, definition of what should be implemented.

And then we can get to implementing it. The framework should be there, I have coded a pretty long-stretching AI system that should allow to implement any additional logic into it. So then it would be implement, and optimize so it works quickly enough (like, it would most likely need to do a lot of tracing shots, where it calculates safe spots to hide behind or escape from, and that could get pretty taxing if not optimized).

Just need someone to really dedicate hours either into reverse-engineering or into playing with the OG under different scenarios and studying how does AI actually behave under different conditions and settings

I can join to this AI testing for sure ...
But then if think more broadly, problem outside the code, the real problem is not even AI but programming hours and people who are needed for this... this is a task that we must solve first i think....

I would disagree here. Programming hours are free and available. Really! It's a matter of time - one year, two year, if this would be programming hours question we'd get it done. However, a programmer works best when there's a clear understanding what is there to program. With AI the problem is that there is just no such thing. You have to figure everything out from scratch first, and then implement. That's not programming and most programmers would not find this... like, attractive, so to speak? It's just a different kind of task and different field of expertise really. Notice how noone wants to implement this, they implement everything else but not this? That's why.

Personally for me, this is a chore, because it just feels like... you're wasting your time, because until you finally "get" it, you feel like you've spent hours and had no progress. That's demotivating.

We need someone for whom this is a challenge he/she would like, to do it. Like, a person who likes to reverse engineer, or study how obscure games work, someone from speedrunning maybe, you know guys there spend ages just to find out how to bug out a game in any way possible - jumping at walls, doing weird inputs etc. Someone like that. If someone would do that, and we would have an understanding what to code - then it would just be a question of man hours put into it to get it done and we'd have a fully playable game - sans the crap most fans don't care about anyway.

On the subject of UnitAI; i'm still intermittently adding comments and video to your UnitAI thread Istrebitel, via the forums, documenting what user-side actions are performed by aliens, agents and human factions for both Final Release and Beta2

You can find the lists, comments, pics and even video of some of these things here
http://www.openapoc.org/threads/task-unit-behavior.185/

Still got to log more behaviours for other organisations, but agents and aliens are largely covered

oh nice! that's what I'm talking about then. I will study it when I have time, but well done, that's EXACTLY what we need

Personally for me, this is a chore, because it just feels like... you're wasting your time, because until you finally "get" it, you feel like you've spent hours and had no progress. That's demotivating.

That's what I'm talking about.

Was this page helpful?
0 / 5 - 0 ratings