Git Product home page Git Product logo

griefly's Introduction

Griefly

Build Status Coverage Status Join the chat at https://gitter.im/griefly/griefly

It is Griefly: Yet Another Space Station Remake.

Dependencies

  1. Some C++ compiler (it works at least with compiler from Visual Studio 2012 and g++)
  2. Qt5 (e.g., Desktop Qt 5.4.0 MSVC2012 OpenGL 32bit). Qt Creator is optional, but desired
  3. SFML 2.3
  4. libpng
  5. zlib
  6. Python 2.7
  7. Go 1.6+ (https://golang.org/dl/)
  8. Git
  9. CMake 2.8

How to build everything on Windows

If you have any issues during the build process please report them

It should be possible to build everything without Qt Cretor, but the guide assumes that Qt Creator is used.

  1. All tools and libs from the depencies list should be available on your machine
  2. Open CMakeLists.txt in Qt Creator
    Open Project -> Select CMakeLists.txt -> Select build folder
  3. Environment variables
    In the opened project: Projects (left column in Qt Creator) -> Build Environment
    It is needed to set environment or usual CMake variables for some libs. Other tools and libs should be present in %PATH%, so if you have installed them then everything should be fine. Mine setted as:
    Set PNG_INCLUDE_DIR to C:\Users\Kremius\Documents\ExternalLibs\lpng1612
    Set PNG_LIBRARY_DIR to C:\Users\Kremius\Documents\ExternalLibs\lpng1612\projects\vstudio\Release
    Set SFML_ROOT to C:\Users\Kremius\Documents\ExternalLibs\SFML-2.3
    Set ZLIB_ROOT to C:\Users\Kremius\Documents\ExternalLibs\zlib128-dll
    If you cannot open the environment variables table (Qt Creator 3.* does not allow that before successfull CMake generation) or prefer usual variables in CMake (Qt Creator 4.* allows to use them in convenient way) then you can set them as -DVARIABLE=VALUE (e.g. -DSFML_ROOT=C:\Users\Kremius\Documents\ExternalLibs\SFML-2.3)
  4. Run CMake with param -DCMAKE_BUILD_TYPE=Release for Release verison.
  5. Build the project.
    Client executables will appear in the Exec folder, and the server executable will appear in the griefly-server folder.
    Client executables depend from various dlls (Qt, SFML), so it is needed to manually place them to the Exec folder.

Note: It is supposed to perform build from an active git repository (git describe --tags --abbrev=4 will be called during the process).

How to build everything on Linux

  1. Install dependencies. Look at travis-get-deps rule in Makefile for clues.
  2. make. Built project will be placed under Exec directory. Server will be built in gopath/src/griefly-server directory.

Note: It is supposed to perform build from an active git repository (git describe --tags --abbrev=4 will be called during the process).
Note: gccgo is not supported! The current FindGo.cmake cannot parse the gccgo version string, so you will obtain an error. Use the official version instead.
Note: There may be some issues with CMake 3.0.2, so try to update your CMake if issues appear.

How to start server

Just run the executable from directory gopath/src/griefly-server.

How to run game without launcher

Pass those command line parameters to KVEngine or KVEngine.exe:

First (master) client:
mapgen_name=brig_small.gen -auto_connect login=<admin login> password=<admin password>
where login and password params values should match values in an auth database (by default griefly-server/db/auth.json)
Other clients:
-auto_connect login=Guest

You can also specify game host by parameter ip=game_host_address. By default it connects to localhost.

Codestyle

See CODESTYLE.md file for C++ codestyle. Use default ones for Python and Go (PEP8 and Go Coding Style accordingly).

griefly's People

Contributors

kremius avatar mechmind avatar shelltitan avatar chemrat avatar disasm avatar martiuk avatar mailaender avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.