All Projects → robrix → Starlight

robrix / Starlight

Licence: bsd-3-clause
spaceships in space

Programming Languages

haskell
3896 projects

Projects that are alternatives of or similar to Starlight

Frag.exe
Multiplayer First-Person Shooter written in C++ using my own engine, Qor
Stars: ✭ 8 (-88.73%)
Mutual labels:  game, opengl
Hs Quake 3
Quake 3 map viewer written in Haskell
Stars: ✭ 33 (-53.52%)
Mutual labels:  game, opengl
Fimbulclient
Open source Ragnarök Online client in C++
Stars: ✭ 8 (-88.73%)
Mutual labels:  game, opengl
Effekseer
Stars: ✭ 728 (+925.35%)
Mutual labels:  game, opengl
Raylib Goplus
A newer version of the Go bindings for Raylib
Stars: ✭ 53 (-25.35%)
Mutual labels:  game, opengl
Openspades
Compatible client of Ace of Spades 0.75
Stars: ✭ 769 (+983.1%)
Mutual labels:  game, opengl
Gameoverlay
🎮 GameOverlay using CEF with support for common rendering backends
Stars: ✭ 32 (-54.93%)
Mutual labels:  game, opengl
Open Builder
Open "Minecraft-like" game with multiplayer support and Lua scripting support for the both client and server
Stars: ✭ 569 (+701.41%)
Mutual labels:  game, opengl
Knights province
Knights Province missions and wiki.
Stars: ✭ 43 (-39.44%)
Mutual labels:  game, opengl
Game Dogfight
Air to air combat game, created in Python 3 using HARFANG 3D.
Stars: ✭ 41 (-42.25%)
Mutual labels:  game, opengl
Expo Crossy Road
🐥🚙 Crossy Road game clone made in Expo (iOS, Android, web), THREE.js, Tween, React Native. 🐔
Stars: ✭ 701 (+887.32%)
Mutual labels:  game, opengl
Supertux
SuperTux source code
Stars: ✭ 1,120 (+1477.46%)
Mutual labels:  game, opengl
Ouzel
C++ game engine for Windows, macOS, Linux, iOS, tvOS, Android, and web browsers
Stars: ✭ 607 (+754.93%)
Mutual labels:  game, opengl
Zemeroth
😠⚔️😈 A minimalistic 2D turn-based tactical game in Rust
Stars: ✭ 940 (+1223.94%)
Mutual labels:  game, opengl
Arxlibertatis
Cross-platform port of Arx Fatalis, a first-person role-playing game
Stars: ✭ 602 (+747.89%)
Mutual labels:  game, opengl
Glumpy
Python+Numpy+OpenGL: fast, scalable and beautiful scientific visualization
Stars: ✭ 882 (+1142.25%)
Mutual labels:  game, opengl
Etlegacy Deprecated
Archived repository. For current repo, see: https://github.com/etlegacy/etlegacy
Stars: ✭ 470 (+561.97%)
Mutual labels:  game, opengl
Freeorion
Source code repository of the FreeOrion project.
Stars: ✭ 507 (+614.08%)
Mutual labels:  game, opengl
Hinterland
2D top-down shooter game
Stars: ✭ 34 (-52.11%)
Mutual labels:  game, opengl
Sunset Cyberspace
🎮👾Retro-runner Game made in Expo, Three.js, OpenGL, WebGL, Tween. 🕹
Stars: ✭ 54 (-23.94%)
Mutual labels:  game, opengl

starlight

screenshot showing player’s ship in quite a close approach to Mercury

Development

Development currently assumes a Mac with ghc 8.8 & cabal 3.0. You can install them directly, or use ghcup.

Initial setup:

brew bundle # for sdl2 & sqlite3
cat data/ephemerides.sql | sqlite3 data/data.db # to populate the solar system db with planets
cat data/factions.sql | sqlite3 data/data.db # to populate the solar system db with factions
cabal build # to set up dist-newstyle with the ghc package db

Run script/repl to load the project (both library & executable) into the REPL. In the REPL, :main will launch the game. Use :main --profile to enable profiling (timings for various parts of the game, shown on exit).

Alternatively, cabal run starlight will launch the game. Use cabal run starlight -- --profile to enable profiling.

Controls

Controls are currently hard-coded; I intend to eventually make them configurable.

  • Up arrow: forward thrust
  • Left/right arrows: turn left/right
  • Down arrow: turn to face opposite direction from current heading (relative to target’s heading, if any, or absolute otherwise; helps you match speed and heading to target’s)
  • +/-: increase/decrease throttle (controls rate of thrust)
  • tab/shift tab: switch to the next/prev target
  • escape: clear the target
  • space: fire weapons in the direction you’re facing
  • t: turn to face the selected target (if any)
  • f: face in the direction the ship is moving
  • b: brake/match speed to target
  • j: jump to the target (if any)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].