Comments (10)
From my perspective, I'd do away with all of the Release/Debug differences. I think it adds complexity (and makes my life more difficult) without adding any benefit to my workflow, but then I didn't develop it around my own workflow ;)
I would have the top level mod-name, and then under About, only one About.xml. (if I were feeling adventurous I would add a script to convert a Steam-format About.xml to both a GitHub-formatted one and an in-game formatted one, but that's another story for another day). So there's much less to deal with or keep track of there.
And the debug and release .dlls would be treated identically - named the same and pulled to the Assemblies folder to replace the other depending on whether the developer made a release or debug build. That way the developer can simply restart RimWorld (perhaps using the single-press restart key HugsLib provides) and the new behavior - with or without Debug-specific code - appears in game with no more effort that that.
(No worries re: delay - I know very much how that goes! Plus we're doing this in our spare time, etc. Which I am finally devoting a tiny bit of to this)
from cookiecutter-rimworld-mod-development.
from cookiecutter-rimworld-mod-development.
Yeah while it would be awesome to have linux commands available, I don't have a machine I could put that together with. A PR would be welcome!
from cookiecutter-rimworld-mod-development.
Oops, sorry xD I didn't realise this wasn't my fork of the repo, I just replied directly to the email notification without looking at it. My bad!
from cookiecutter-rimworld-mod-development.
from cookiecutter-rimworld-mod-development.
Okay; I'll work on it some, and see what I come up with.
I do have a few questions about the original design. The separate names/About.xml/OutputPath for Release and Debug strikes me as ...unhelpful. Especially for those of us who use #if DEBUG blocks during development/testing - having different mod names is actually kind of inconvenient?
from cookiecutter-rimworld-mod-development.
It was a design pattern I developed and used for personal mods, but in hindsight can see it might add more complexity than the pattern is worth. What would be ideal behavior from your perspective?
And sorry for the delay, I'm just recovering from being sick. Out of curiosity, how are you writing/compiling/testing mods on a Unix platform? Never thought it was a viable dev platform for RW but would be interested in hearing about your implementation.
from cookiecutter-rimworld-mod-development.
Actually, once you take out that distinction, there's not a necessary reason for the copy commands at all, and the cookiecutter recipe as written works quite well on Linux.
from cookiecutter-rimworld-mod-development.
Thanks for the input, I agree on all points. I've simplified a lot of the solution to make it more unopinionated 👍
from cookiecutter-rimworld-mod-development.
Fix works well; much easier to not have to think about that at all!
from cookiecutter-rimworld-mod-development.
Related Issues (18)
- Only 1 level of XML autoincluded
- Localization of xcopy prevents build commands from working correctly on non-US systems HOT 1
- RimWorld "RimWorldWin64" renaming causing multiple issues HOT 1
- Issue with missing namespaces and indirect dependencies HOT 1
- Can't install HOT 1
- Cookiecutter Issue Assemblies HOT 2
- No debug version (also, no default version) HOT 2
- Add ability for user to specify assembly folder HOT 1
- XML Defs only added to project on load
- Project and Assembly GUIDs should be unique HOT 3
- Unable to complete installation Steps HOT 3
- Tesst
- Issue with building from new
- Assembly doesn't link well HOT 1
- Add LICENSE to pregenerated files
- Fix About.xml workflow
- Debug dll copied to release, debug sometimes makes an empty release folder
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 cookiecutter-rimworld-mod-development.