The Ur-Quan Masters Home Page Welcome, Guest. Please login or register.
Did you miss your activation email?
October 09, 2024, 02:43:41 pm
Home Help Search Login Register
News: Celebrating 30 years of Star Control 2 - The Ur-Quan Masters

+  The Ur-Quan Masters Discussion Forum
|-+  The Ur-Quan Masters Re-Release
| |-+  General UQM Discussion (Moderator: Death 999)
| | |-+  Help Recreating the AI for SC2 Melee
« previous next »
Pages: [1] Print
Author Topic: Help Recreating the AI for SC2 Melee  (Read 1343 times)
epicdave
Zebranky food
*
Offline Offline

Posts: 2



View Profile
Help Recreating the AI for SC2 Melee
« on: April 11, 2016, 12:49:55 am »

Hi all,

I'm doing some research with neural networks with the eventual goal of pitting a swarm of my ANNs against the in-game AI for SC2 Melee. I've checked on reddit and googled around a bit and I haven't been able to find any analysis of what exactly the heuristic rule set is. Some friends of mine and I are going to delve into the UQM source code but I wanted to check in here first to see if someone hasn't already done this and/or knows the code well enough to ensure we've done it correctly. Does anyone here have any knowledge or resources that might help out?

thanks in advance  Smiley
Logged
Death 999
Global Moderator
Enlightened
*****
Offline Offline

Gender: Male
Posts: 3874


We did. You did. Yes we can. No.


View Profile
Re: Help Recreating the AI for SC2 Melee
« Reply #1 on: April 12, 2016, 02:22:54 pm »

I remember there was a library with 3 behaviors defined for all ships - 'ATTACK', 'AVOID', and 'ENTICE'. The latter means to approach and break off in such a fashion the enemy might be lured into following, at which point you turn around and get them.

Each ship had its own main AI function and could invoke any of those, or have additional behaviors like hunting down asteroids (slylandro).
Logged
epicdave
Zebranky food
*
Offline Offline

Posts: 2



View Profile
Re: Help Recreating the AI for SC2 Melee
« Reply #2 on: April 12, 2016, 07:00:14 pm »

hmm -- looking at the source and pairing that with what you've told me I think this is starting to make sense. Looking at cyborg.c and vux.c, it appears as though there's a MoveState flag and an InputState flag. The InputState flag seems to govern weapons firing and the like. The flags seem to be set at the ship level and acted upon at the cyborg.c level. Is that basically it (excepting of course for a bazillion if/else statements) ? 
Logged
Pages: [1] Print 
« previous next »
Jump to:  


Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!