Resources and links - beyond-all-reason/Beyond-All-Reason GitHub Wiki
-
For Users
- BAR Offline LAN
- BAR Website
- BAR Discord - Where we all communicate both offically and unofficially
- Software/Game-Documentation
- Testing & Performance Profiling
- Art, Promotion, Content Creation
- Modeling
- Animation
- For setting up BAR multiplayer see the following BAR LAN setup guides:
https://github.com/Yaribz/SPADS/wiki#beyond-all-reason-specific
https://www.beyondallreason.info/
- This is where our community is, and where we are, for we are a part of our community and playerbase.
You are most likely to get help of whatever varity you may need here, ranging from game issues, to getting guidance on contributing to the project.
https://discord.gg/beyond-all-reason
-
https://springrts.com/wiki/Lua_Performance
It compares several methods of doing the same thing providing what is the fastest.
For those who don't understand it, bigger number worse, slower.
- For Gadget (and engine) Profiling you can use Tracy and Tracy Zones, see:
https://github.com/beyond-all-reason/RecoilEngine/wiki/Tracy-Profiling
- (Not Recommended) Alternatively, If you wish to avoid using Tracy,
you may consider calling into unsynced and have unsynced time and log, see:
https://springrts.com/wiki/Lua_sync_to_unsync
-
For Widgets we have a Profiler Widget, to acess it:
1. open the widgets menu:
/widgetselector, or /F11 if you have previously used the widget selector
2. Find Widget Profiler and/or Profiler Histograms -
Alternatively, you can use the GetTimer or GetTimerMicros to measure time to complete of the function
[EXPAND] Sample Code with GetTimer/GetTimerMicors
Code Written by Badosu:
-- Get the timer local spGetTimer = Spring.GetTimer -- Try to swap the timer for a more accurate one local highres = nil if Spring.GetTimerMicros and Spring.GetConfigInt("UseHighResTimer", 0) == 1 then spGetTimer = Spring.GetTimerMicros highres = true end function widget:Update() local startTimer = spGetTimer() update() Spring.Echo('Update time:', Spring.DiffTimers(spGetTimer(), startTimer, nil, highres)) end
- High Quality Screenshots, Renders, Game Logo(s), and many other assets you may wish for when making a Video about BAR
https://drive.google.com/drive/folders/1oT_PVzho0Y5K2v_611K9bPAAg1dwMqCF
- For when you wish to take screenshots of things without the background.
https://gist.github.com/Beherith/07f2f44e6593009b90ccefd97abd4760
- Blender Plugin for Import/Export of S3O:
https://github.com/ChrisFloofyKitsune/s3o-blender-tools/tree/main?tab=readme-ov-file#install-instructions - Blender Unit Making Template (~500MB):
https://mega.nz/file/bIxSHRBI#ihBXd27YbGVWFkM8edpbZ-1L351Me9VgbWKXXl4HAM0 - Old Conveter Obj2S3O:
https://github.com/beyond-all-reason/OBJ2S3O - Art Direction and Refrance:
https://www.figma.com/file/aKpoYwJnOfGzOQ0JfkdBOaTm/BAR_units?type=design&node-id=0-1&mode=design&t=atbukbPglrxlypyv-0
- Code Compiler:
https://github.com/beyond-all-reason/BARScriptCompiler - VSCode bos Syntax Highligh:
https://marketplace.visualstudio.com/items?itemName=chesiren.bos-language-support
- Code Doc, COB Animations (Antiquated):
https://springrts.com/wiki/Gamedev:Main#Animation_of_units - Video Guide:
https://www.youtube.com/watch?v=DaMLNfOR6KU&feature=youtu.be - Walking Animations / Inverse Kinematics:
https://docs.google.com/document/d/1-oMLkWHBhfN6a3a5aEZU6X02lY4aZE52nZRtrvIe4cM/edit?pli=1&tab=t.0#heading=h.1inhxwxdpmtt