Git Product home page Git Product logo

retro-game's Introduction

Retro Game

An OGame clone in retro style

CI

Running

You can run retro-game on Docker Compose:

docker-compose up

This will setup a development environment, where you can test the game. The server should be running on http://127.0.0.1:8080.

Note that this setup is not ready for production! This setup may expose ports to database and redis. Make sure you configure it properly before running on production. Check etc directory if you are looking for systemd service and nginx configs.

Community & server

There is a testing server: https://retro-game.org.

If you want to chat about the game or development, see: https://discord.gg/FJ6rK4V.

retro-game's People

Contributors

dependabot[bot] avatar gaius1304 avatar intintedao avatar lsrom avatar marcin-ramotowski avatar nowak-mateusz avatar patrykstefanski avatar sanawbicz avatar sbraun90 avatar tentamten avatar zb0oj avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

retro-game's Issues

Units can have zero build time

Bug: With high enough nanite factory/shipyard or just speed multiplier it is possible to build units instantaneously. This isn't possible in vanilla game.

Fix? All units/researches/buildings should have minimum build/research time of 1 second.

rpc error: code = Unknown desc = process "/bin/sh -c apt-get update && apt-get install -y openjdk-17-jre-headless && rm -rf /var/lib/apt/lists/* && chmod 400 *" did not complete successfully: exit code: 100

Hi, sorry, I have one error that I don't know to fix:

I executed the command:

docker-compose up

and the installation finishes with

`#6 17.27 head: cannot open '/etc/ssl/certs/java/cacerts' for reading: No such file or directory
#6 17.35 Exception in thread "main" java.lang.InternalError: Error loading java.security file
#6 17.35 at java.base/java.security.Security.initialize(Security.java:106)
#6 17.35 at java.base/java.security.Security$1.run(Security.java:84)
#6 17.35 at java.base/java.security.Security$1.run(Security.java:82)
#6 17.35 at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
#6 17.35 at java.base/java.security.Security.(Security.java:82)
#6 17.35 at java.base/sun.security.jca.ProviderList.(ProviderList.java:178)
#6 17.35 at java.base/sun.security.jca.ProviderList$2.run(ProviderList.java:96)
#6 17.35 at java.base/sun.security.jca.ProviderList$2.run(ProviderList.java:94)
#6 17.35 at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
#6 17.35 at java.base/sun.security.jca.ProviderList.fromSecurityProperties(ProviderList.java:93)
#6 17.35 at java.base/sun.security.jca.Providers.(Providers.java:55)
#6 17.35 at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:156)
#6 17.35 at java.base/java.security.cert.CertificateFactory.getInstance(CertificateFactory.java:193)
#6 17.35 at org.debian.security.KeyStoreHandler.(KeyStoreHandler.java:50)
#6 17.35 at org.debian.security.UpdateCertificates.(UpdateCertificates.java:65)
#6 17.35 at org.debian.security.UpdateCertificates.main(UpdateCertificates.java:51)
#6 17.37 dpkg: error processing package ca-certificates-java (--configure):
#6 17.37 installed ca-certificates-java package post-installation script subprocess returned error exit status 1
#6 17.37 dpkg: dependency problems prevent configuration of openjdk-17-jre-headless:amd64:
#6 17.37 openjdk-17-jre-headless:amd64 depends on ca-certificates-java (>= 20190405~); however:
#6 17.37 Package ca-certificates-java is not configured yet.
#6 17.37
#6 17.37 dpkg: error processing package openjdk-17-jre-headless:amd64 (--configure):
#6 17.37 dependency problems - leaving unconfigured
#6 17.37 Processing triggers for libc-bin (2.31-13+deb11u6) ...
#6 17.41 Processing triggers for ca-certificates (20210119) ...
#6 17.42 Updating certificates in /etc/ssl/certs...
#6 17.88 0 added, 0 removed; done.
#6 17.88 Running hooks in /etc/ca-certificates/update.d...
#6 17.88
#6 17.91 /etc/ca-certificates/update.d/jks-keystore: 82: java: not found
#6 17.91 E: /etc/ca-certificates/update.d/jks-keystore exited with code 1.
#6 17.91 done.
#6 17.93 Errors were encountered while processing:
#6 17.93 ca-certificates-java
#6 17.93 openjdk-17-jre-headless:amd64
#6 17.95 E: Sub-process /usr/bin/dpkg returned an error code (1)

failed to solve: rpc error: code = Unknown desc = process "/bin/sh -c apt-get update && apt-get install -y openjdk-17-jre-headless && rm -rf /var/lib/apt/lists/* && chmod 400 *" did not complete successfully: exit code: 100`

Do you have any idea about how to fix this?

I tried to execute on :

Docker version 24.0.2, build cb74dfc

Thanks in advance.

Show current transported resources in overview

At the bottom of the overview page show how many resources are currently transported by your fleet.

Mockup:

grafik

Open question: Should the table show the targets (like in the screenshot) or should there be a row for the different missions.

Force String.format to use the US-Locale

If the system locale is german the update of statistics fails, because the numbers are wrongly formatted and PSQL cannot correctly interpret them.
Quickfix: import java.util.Locale; String.format(Locale.US, ...);

Open question: Is there a more central place to set the locale, so that we do not have to add it to every String.format statement?

Resources calculated incorrectly when the capacity is reached

Assume that:

  • there is 0 deuterium on a planet
  • the deuterium synthesizer produces 3 deuterium per second
  • the deuterium capacity is 100

Then, after 33 seconds there will be 99 deuterium on that planet. However, after another 1 second, there still will be 99 deuterium (it should be 100).

The reason for that is the resource calculation that considers only the seconds when a resource can be produced at full speed. The last second should be taken into account as a special case.

Metal and crystal are calculated incorrectly as well, but since by default they are produced as a base income, the bug can be easily overlooked.

Allow switching of planets/moons in empire view

Clicking in the empire view on a body picture or body coordinates switches the current body to this body.

Currently, clicking on the coordinates goes to the galaxy view. It has to be decided if this behaviour should be changed.

Show the amount of free planet slots in the "Send Fleet" menu

Sending a colonization ship to a planet without enough Astrophysics does not notify the player about it.
In fact, we only learn about the Astrophysics "gate" in the "INFO" page.

*) The Send Fleet window should show how many planets I can build (and how many free slots I have)
*) The Colonization ship should also note that we need astrophysics to build new planets.

Not yet available buildings are shown

Bug: When building is being built, all buildings are shown and can be put into queue, If the previous queue finished in the meantime, game redirects to /error page. If the queue hasn't finished, game just ignores addition of unavailable building.

Fix? Probably don't show building as available for queue as long as it's requirements aren't fully met (all necessary buildings/researches are finished).

Colors in Tech Tree

Colors (e.g. green and red) in Tech Tree could be shown, indicating that a building/technology is already built/researched or not.

Password reset doesn’t work

Hi, I cannot reset my password. When submitting my email and after clicking “reset password” I am receiving information

“whitelabel error page
This application has no explicit mapping for/error, so you are setting this as a fallback.”

Any solution to this?
cheers

Sending attack fleet on noob protection target shows /error page

Bug: Attacking player under noob protection shows /error page without any explanation and log shows WrongTargetUserException with generic message.

Fix? Should be better presented to the user (I assume you just haven't got around to it) and ingame logs should also better reflect what actually failed. Currently all checks have the same message and exception (FlightServiceImpl).

Hangar/Research lab in progress doesn't stop unitp production/research on planet

Bug: When hangar is in construction, you still can build ships. Also, when Research lab is under construction, you can still do research.

Fix? Hangar/research lab in construction should disable unit production/research on that planet. Research lab under construction should probably still count towards the research network bonus though?

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.