vgstation-coders / vgstation13

Butts
GNU Affero General Public License v3.0
265 stars 546 forks source link

Compile time is way too long #16675

Closed JaredFogleSS13 closed 6 years ago

JaredFogleSS13 commented 6 years ago

Description of issue

Compile time is way too long. Maybe it's just my years old computer, but it takes maybe 5 minutes to compile this heap of shit. I try disabling files for objects and stuff I probably won't need, but then my compile log is flooded with errors. Perhaps there should be some guide or something on how to make compile times much shorter at the cost of having an actually playable server? (As in, when testing unless you're actually fiddling with robotics code you don't need them).

Difference between expected and actual behavior

It shouldn't take several minutes every single time to compile even if it's just a small change.

Steps to reproduce

Compile this.

Specific information for locating

N/A

Length of time in which bug has been known to occur

I have no idea.

Server revision

Latest. Too lazy to open up the game.

Issue bingo

Please check whatever applies. More checkboxes checked increase your chances of not being yelled at by every contributor.

gbasood commented 6 years ago

literally just BYOND we can't fix it

Exxion commented 6 years ago

Always has been, always will be. BYOND was never meant to run a game of this scale. Sorry.

JaredFogleSS13 commented 6 years ago

thought so, but there are still hundreds of scripts that don't have to be enabled every single compile time.

Shadowmech88 commented 6 years ago

You can somewhat improve compile times by using a smaller map, such as test_tiny. Beyond that, it's just the result of living in a castle built on top of a garbage heap.

JaredFogleSS13 commented 6 years ago

@Shadowmech88 will try this, but like you said with the word "somewhat", i don't expect this to improve it very much

small-boss commented 6 years ago

i had compile times of literally 15 minutes on a shitty pc once thats just how byond is

Exxion commented 6 years ago

There are not actually... any compile-time scripts, as far as I know. If you mean unnecessary code, then sorry, but SS13 is about as far from modular as you can get. If you can find a file of any significance that can be unticked without causing a compile failure, I'll be shocked.

That said, using a test map as suggested above will probably cut off 30 seconds to a minute, and you can get some additional benefit from using dm.exe rather than the actual Dream Maker.

JaredFogleSS13 commented 6 years ago

@Exxion unnecessary code is what i meant, and yea i figured out the non-modular part. as for dm.exe, that i didn't know. i see that i have it, but i'm not sure what it is. is it a console program that i can just run dm.exe vgstation13.dme in?

gbasood commented 6 years ago

yeah you can use not Dream Maker to compile via dm.exe there's project setups for things like building via Atom and the build apm package more specifically: https://www.reddit.com/r/SS13/comments/40xh7s/coder_stuff_updates_regarding_github_atom_for_dm/ https://www.reddit.com/r/SS13/comments/48stt2/yet_another_github_atom_update_atomic_dreams/

JaredFogleSS13 commented 6 years ago

@gbasood i prefer vs code over atom, but i get how all that works and could get it working for me. i'll look into it, how much would using test_tiny and dm.exe improve compile time?

gbasood commented 6 years ago

oh in that case there's a syntax package for VS Code based on Atomic Dreams that I've published as well, and you can configure it to build similarly for compile times: test_tiny.dmm helps a lot, it also more specifically helps with starting a local server after compiling by a fuckton

Exxion commented 6 years ago

VS Code package based on Atom package based on Sublime package that doesn't even really work anymore

What kind of hell have we trapped ourselves in

gbasood commented 6 years ago

the vs code package is basically a straight port at least they both use the same rendering engine whereas the sublime package never worked quite right anyway

Killette2 commented 6 years ago

Lets just port ss13 to another engine, that should fix this problem. If nobody else has the time, you can tag me to work on this and close the issue.

MadmanMartian commented 6 years ago

DM only compiles using one core, so you've gotta have a good clockrate on your processor.

Went from a 1.6GHZ to a 3.4GHZ, compile time went from 12 minutes to 2 and a half.

gbasood commented 6 years ago

@Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2 @Killette2

ss14 when

Killette2 commented 6 years ago

image I'm making it 3D while I'm at it

gbasood commented 6 years ago

roblox doesn't count

Exxion commented 6 years ago

Honestly even that is better than BYOND