Comments (7)
If someone does something involving pysc2 / commandcenter and wants to pull request what they did, I would be happy to review it, but I have no plans of doing anything but C++ with CommandCenter for the foreseeable future
from commandcenter.
Seems like a lot of work to avoid learning a little C++? :D
from commandcenter.
The problem is that there is no direct connection between the c++ code and the Python code. From my point of view the only thing that could be done here is creation of the Python bindings over Python API that will allow to use CommandCenter in Python apps. However it is a hard work to support such bindings in actul state.
from commandcenter.
@alkurbatov yes, that's my understanding too. It would be doable if we can keep an API surface, but it's additional restrictions. I was more thinking along the lines of rewriting the whole project in python for the sake of interop.
from commandcenter.
lol sure
My hypothesis is that having 2 projects for the sc2 research that can reuse each other is better than having 2 projects that have no way to interact and can lead to more interesting results. But I don't have any data to prove it.
from commandcenter.
True - I just don't have an immediate use for it so I'm going to bow out of any responsibility for it :)
I suspected that using some sort of python / c++ interop may be the easiest way of going about it
from commandcenter.
@vors I did such things for more complicated C-like API. We used handmade codegenerator to analyze C++ code and create Python bindings (each of which converted arguments and executed a C++ function). While the codegenerator allows to reduce support burden (i.e. just recompile everything when needed) on the other hand we have to support the codegenerator and expand it for some complex datatypes, and fix leaks in the generated code.
I am not sure if such approach is applicable here but it could be an option too.
However according to the experience of the large and complex projects (e.g. libvirt): they usually implement separate Python API which use C-function calls, write everything manually and cover the API with tests as much as possible.
from commandcenter.
Related Issues (20)
- Linker errors after merging latest changes HOT 5
- Bug with CatalystLE: unable to find all base locations HOT 4
- null self base location HOT 3
- Config file not found? HOT 5
- "corecrt.h" not found? HOT 3
- how can use in online mode? HOT 1
- How do I play against my own AI ? HOT 2
- Expansion Error
- a
- class BWAPI::Race has no member "Protoss" HOT 14
- Segmentation Fault After Game Started HOT 1
- How many kinds of units and buildings CommandCenter can construct? HOT 1
- Cannot open include file: 'cstdio' HOT 5
- cannot open input file 'BWAPI.lib' HOT 1
- COMMANDCENTER: AN SC2 AI BOT on windows HOT 3
- CommandCenter doesn't work with StarCraft 2 >= v4.10 HOT 2
- Default BotConfig.txt Causes Crashes in SC:BW HOT 1
- [Windows] [SC2] Bot unable to build building HOT 5
- malloc: can't allocate region
- Run example of Commandcenter,* homeBase = getPlayerStartingBaseLocation(player) is NULL HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from commandcenter.