Code Monkey home page Code Monkey logo

sparcraft's Introduction

sparcraft

Automatically exported from code.google.com/p/sparcraft SparCraft is an open source abstract StarCraft combat simulation package for Windows and Linux. It can be used to create standalone combat simulations or be imported into an existing BWAPI-based StarCraft bot to provide additional AI functionality.

SparCraft was built with speed in mind, and uses a system of frame fast-forwarding to bypass game frames during which no combat decisions are being made (ie: during attack cooldowns, movements, etc). Using this system, SparCraft can easily perform tens of millions of unit actions per second.

SparCraft is abstract in the sense that it does not perfectly model all aspects of StarCraft. Since no StarCraft source code is available, all combat logic is our best guess at what is happening in the game engine. It is meant to be a simple testbed for AI systems playing an abstract version of a very complex RTS game. It does not need to perfectly model all StarCraft features to do this job.

SparCraft currently contains the following functionality:

Accurately models all unit size, weapon, armor and damage types Accurately models all unit upgrades and research types Accurately models unit speeds, attack cooldowns and animation frame timings Can extract map files straight from StarCraft for use in simulation SparCraft Unit Movements

While SparCraft supports arbitrary pixel-precision movements, GameState::generateMoves() only generates UP, DOWN, LEFT, RIGHT movements of a fixed length. This abstraction is to give the search algorithms a reasonable number of actions to search over. This means the standalone version of SparCraft only supports 4-directional movement, but if you edit the code yourself you can implement arbitrary movements. SparCraft does not yet contain the following functionality:

Unit Collisions - This is by design. Unit collisions are expensive, the point of the system is to be fast Fog of War Spell-Casting or Splash Damage (Muta 1-hit only) No Burrowing or Cloaking / Detection Non-Deterministic Aspects (such as random hit chance) Vision Up Ramps Unit turning or acceleration Despite these features not yet being included, SparCraft simulations demonstrate a high level of accuracy with what happens in an actual StarCraft battle. The accuracy of these simulations however diminishes as battle sizes increase, due to the lack of unit collision functionality.

sparcraft's People

Contributors

zloop1982 avatar

sparcraft's Issues

Can not access the http version of the source code.

What steps will reproduce the problem?
1. http://sparcraft.googlecode.com/svn/trunk/ sparcraft-read-only, google 
chrome can not find this URL
2.
3.

What is the expected output? What do you see instead?
I was expecting to see the source code, however i got a 404 error with the 
following message "The requested URL /svn/trunk/ sparcraft-read-only was not 
found on this server."

What version of the product are you using? On what operating system?
Not relevant 

Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 24 Apr 2013 at 12:11

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.