Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1385112 Posts in 66318 Topics- by 58797 Members - Latest Member: jessicafabela

November 26, 2020, 01:53:37 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsStartron (The procedurally generated ASCII space sandbox)
Pages: 1 ... 4 5 [6] 7 8
Print
Author Topic: Startron (The procedurally generated ASCII space sandbox)  (Read 5673 times)
Rogod
Level 1
*



View Profile WWW
« Reply #100 on: October 18, 2020, 01:10:46 PM »

Thanks man :D



It looks like everything's going to be ok afterall:

(Fully playable Linux Startron on the left, fully playable Windows Startron on the right)
(All we're missing is music and the Captain's log is a bit funky because the arrowkeys don't work :D)

I can't think of anyone who's actually attempted what I just pulled off here lol; not even the guy who made Dwarf Fortress bothered - he went straight for the "I'll make my own console" approach.
Beer!
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #101 on: October 19, 2020, 01:04:03 AM »

Write a post-mortem blog post once you're done, I bet it'll go viral Cheesy
Logged
Rogod
Level 1
*



View Profile WWW
« Reply #102 on: October 19, 2020, 02:51:12 AM »

@JobLeonard
Assuming I release v0.49 soon and provide a Linux distribution, which flavour is best for this? - Or will it work anywhere if I just compile for Ubuntu x64? (Surely I don't need to make 1 build for each of the ~5347854 versions of Linux xD)

(All it requires is libncursesw5 by the way - everything else should come with it - and the readme provides novice-instructions too)
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #103 on: October 19, 2020, 03:44:28 AM »

I think if you build a static binary it should run on any Linux x64 platform. Whatever extra size overhead it brings I bet it'll be insignifant compared to even a single art asset of most other games  Cheesy
Logged
Schrompf
Level 8
***

C++ professional, game dev sparetime


View Profile WWW
« Reply #104 on: October 19, 2020, 04:13:12 AM »

From my experience, linking the runtime statically, and using that weird "-Wl,-rpath=." switch so it looks for possible SharedObjects locally instead of at some fixed path, should be enough. It'll still fail at very old distros because the ABI sometimes changes, but you should be as safe as it ever gets on Linux.
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
Rogod
Level 1
*



View Profile WWW
« Reply #105 on: October 19, 2020, 04:17:30 AM »

Am not sure I know what we're talking about here lol

All I'm doing is running a command in my C# project directory and it spits out a Ubuntu build - how would I know if it was static or not? And where is this switch for shared objects typically performed in the process?


Once this build runs, I get a Startron file I can run on Ubuntu - is that going to be enough do you think? :S Or have I got to do something else here?
Logged

Schrompf
Level 8
***

C++ professional, game dev sparetime


View Profile WWW
« Reply #106 on: October 19, 2020, 04:29:49 AM »

Uh, yeah, I see. From the "ascii" I wrongly assumed you're using C/C++ or some other native language. Unity should already produce a package that somehow runs everywhere. And in case it doesn't, you're out of luck as far as I know.
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
Rogod
Level 1
*



View Profile WWW
« Reply #107 on: October 19, 2020, 04:31:06 AM »

Wink This isn't Unity either lol

Just using plain old C# and .Net Core here Gentleman (And kernel32.dll and user32.dll except for the Linux build where it's now swapping these for libncursesw5)



Maybe it's best if I just let folks try what I've been using as an Ubuntu build and see if it works for them - was just worried people were going to say "Noo, I need a Debian/BSD/SLES/RHEL/SUSE/CentOS build" (I can't tell the difference but I assume there's a reason it lets me choose from so many)
« Last Edit: October 19, 2020, 04:47:10 AM by Rogod » Logged

Schrompf
Level 8
***

C++ professional, game dev sparetime


View Profile WWW
« Reply #108 on: October 19, 2020, 04:52:49 AM »

So I jumped to another unfounded conclusion :-/ Sorry.
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
JobLeonard
Level 10
*****



View Profile
« Reply #109 on: October 19, 2020, 09:33:18 AM »

Well, I highly doubt that you are using any Ubuntu-specific features, and Ubuntu 18.04 is a long-time service release. Most Ubuntu-spinoffs should run that binary just fine.
Logged
Rogod
Level 1
*



View Profile WWW
« Reply #110 on: October 19, 2020, 10:15:30 AM »

Update v0.49
Now everyone can play! Gomez


List of updates/fixes
  • Linux compatibility with NCurses! (Phew, that was a journey)

    As part of that, I also did the following:
    • Made it reset the colour to white on black before quitting

    • Swapped Ctrl+↑ and Ctrl+↓ in the build menu for Shift+↑ and Shift+↓ on account of Ctrl+S crashing the game and the arrowkeys not working - please use WASD; your life will be so much simpler :D

    • Fixed black foregrounds on black backgrounds rendering the foreground colour as white

    • Updated the README.txt (and the website) to include rudimentary Linux instructions

    • Updated the build script to compensate for all this lol

    • Turned off the music in the Linux version (sorry, I'll get it working some other day - finding a library for that as well was just too much churn)

    • Made it wrap the Captain's log on account of not being able to navigate the lines with the arrow keys (although I have noticed backspace doesn't work and it types the console character in when closing, so expect a fix for that in a near-future update)

  • Aside from all this Linux business, the actual update was originally to announce some new in-game music, courteously provided by a fan on these very forums (thanks Drew)


Linux users, please feed back on how the Startron experience goes (i.e. whether it even works etc.) - I'd suggest not pressing too many system/operation keys at the moment or any combinations of Ctrl+{letter}.

Also if you have any quality of life suggestions (maybe a script to start the game that sets the console to mono @ 120x60) these would be much appreciated.

Make sure to let me know what Linux version you're on as well; I only know it runs on Ubuntu and am curious if the other flavours play ball. Grin



Logged

JobLeonard
Level 10
*****



View Profile
« Reply #111 on: October 19, 2020, 10:24:53 AM »

Well... the intro movie runs! And the splash-screen!  Kiss

After that it quits as soon as I press any key without any error messages... Anything I can do to make it give some debugging info that could be useful to you?
Logged
JobLeonard
Level 10
*****



View Profile
« Reply #112 on: October 19, 2020, 10:31:17 AM »

Wait, false alarm: that's just how it responds to arrow keys somehow? Also I had to resize the console. It seems to work now though!
Logged
Rogod
Level 1
*



View Profile WWW
« Reply #113 on: October 19, 2020, 10:33:55 AM »

Awesome!

Yea arrowkeys want to misbehave (I think the arrowkeys are navigating through previous terminal commands and attempting to feed letters in from things you've previously typed) There is apparently a library I can swap to (TermKey) if this becomes a problem later, but for now it's completely playable with just the letter keys.

And resizing the console is apparently something Linux just can't do programmatically - unless there's a bash script I can get folks to run before the game starts to solve this?

P.S. Presumably you're not on Ubuntu? - It would be useful to know what Linux flavours it definitely works with Gomez



EDIT:
The cosmos can be made very unstable by pressing play before the whole cosmos has saved (this results in it just crashing out when trying to do fairly mundane things like draw the lines between systems).

I have solved the issue as far as I can tell (for v0.50) but it looked to be exacerbated by my slow VM.

@JobLeonard did this problem affect you?
« Last Edit: October 19, 2020, 11:55:27 AM by Rogod » Logged

Rogod
Level 1
*



View Profile WWW
« Reply #114 on: October 19, 2020, 12:08:32 PM »

Update v0.50
Now everyone can play! (Again) Gomez


List of updates/fixes
  • File access stability fix (I couldn't let v0.49 sit around with such a game-breaking bug in it)


« Last Edit: October 20, 2020, 12:58:16 PM by Rogod » Logged

vdapps
Level 1
*


Head against wall since 2013


View Profile WWW
« Reply #115 on: October 19, 2020, 12:28:07 PM »

Happy you made it! Hand Thumbs Up Left Hand Thumbs Up Right
Logged

Rogod
Level 1
*



View Profile WWW
« Reply #116 on: October 20, 2020, 12:57:47 PM »

Update v0.51
Who knew they'd have so much in common! Gomez


List of updates/fixes
  • Allowed the Linux input to work the same as the Windows input (with a few tweaks) so things like arrowkeys no longer crash the game and just move the ship around as they should (also combinations like Ctrl+S no longer crash the game either, so I've put the build menu instructions back to Ctrl+↑ and Ctrl+↓)

  • Fixed the backspace and console keys in the Captain's log on Linux

  • Fixed lingering particles left over from previous screens when moving around between cosmos/system/entity

This is likely the last technical update for a while (now that Linux appears to be behaving itself) as I intend to get back to game content in the next update. However, I will mention that I looked into finding a way to play music on Linux and it appears that short of licensing an audio library or writing my own audio wrapper, the Linux version is going to have to remain silent for now unless someone comes up with a bright idea on this one.


« Last Edit: October 20, 2020, 02:47:16 PM by Rogod » Logged

JobLeonard
Level 10
*****



View Profile
« Reply #117 on: October 21, 2020, 01:01:51 AM »

I can live with that Smiley
Logged
Rogod
Level 1
*



View Profile WWW
« Reply #118 on: October 22, 2020, 02:25:56 PM »

Update v0.52
Today is a fine day for science! Gomez


List of updates/fixes
  • Updated all the building artwork
    Old

    New

    (The most obvious change being the dwelling which looked proper shonky before xD )

  • Added science, tourism & production ratings for entities that can be built on
    Yay graphs Gomez

  • Added 2 new buildings to facilitate the new entity ratings:

    The biosphere

    Increases science
    and tourism
    The hotel

    Increases tourism

    (There are also 5 new buildings planned for future updates as well as making these 2 more functional)

  • When exiting and re-entering the same entity, your ship will position itself where it last was (just a quality-of-life tweak :D)

The next couple of updates will be adding more fun stuff like this so stay tuned Who, Me?


« Last Edit: November 05, 2020, 03:29:01 PM by Rogod » Logged

a-k-
Level 1
*


View Profile
« Reply #119 on: October 23, 2020, 06:20:56 AM »

Great progress on the Linux front! It seems to run fine on Ubuntu 18.

A few issues I run into (with v0.52):
  • The window isn't fully redrawn upon resizes, so some characters turn to blank indefinitely (specifically, that happened while I was altering the horizontal spacing between characters).
  • After a few rounds of new game and cosmos generation, the latter consistently resulted in a red "missing or corrupt" message. Seems to be fixed by restarting the game.
  • Initiating cosmos generation or a new game while a save is in progress (either of the cosmos after pressing G or the game state after Q) core dumps with Unhandled exception. System.InvalidOperationException: Start may not be called on a task that was already started.
  • Should the newly-generated cosmos appear on screen before clicking Play? For me the screen just continued to display the background stars animation, so it wasn't clear why confirmation was needed.
Logged

Pages: 1 ... 4 5 [6] 7 8
Print
Jump to:  

Theme orange-lt created by panic