Skip to content

Commit

Permalink
update README
Browse files Browse the repository at this point in the history
  • Loading branch information
in0finite committed Aug 10, 2023
1 parent 5c6c93f commit d62c103
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 116 deletions.
87 changes: 22 additions & 65 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,95 +3,52 @@

![](pictures/mainpicture.jpg)

uGameCore is a powerful framework for Unity game engine that contains core components of what every game should have. It takes care of everything 'under the hood', allowing you to focus on main parts of the game, like game logic and design.
UGameCore is a powerful framework for Unity engine that contains core components of what every game should have. It takes care of stuff 'under the hood', allowing you to focus on main parts of the game, like game logic and design.

Don't ever again start from scratch, or waste your time on creating menus, settings, multiplayer... It is all done for you. You are 10 minutes away from finishing all background stuff, and finally focusing on the game itself.
Built with multiplayer in mind, the framework is modular, extendable, with easy setup.


All features are built on top of Unity, which means it is very easy to extend them, and to adapt them to any existing project.
## Features

- Runtime Console : displays game log and allows custom commands to be entered

- CVars (configurable variables) : They store configuration and can be edited from Console, Settings menu, or command line. Similar to `PlayerPrefs`, but offer more features and customization.

- Settings menu : allows to edit configuration (cvars) in a separate menu, and save/load them to disk. UI is dynamically created from cvars, and doesn't require any manual setup.

- Chat system : Allows the players to send chat messages to the server, and the server to broadcast messages to players. Custom handlers can be registered to process chat messages and, for example, execute commands.

- Spectator system : Allows players to spectate other players while being dead (or being in a Spectator team). With UI controls for navigating between players. Similar to E-Sport games.

- Batch mode : support for running in batch mode (as a dedicated server)

- Scoreboard : simple scoreboard which displays players statistics


Repository for library which is used in the project (uGameCore.dll) is [here](https://github.com/in0finite/uGameCoreLib).

## Features

- Player management – per player data (e.g nickname), player logins, choosing teams, spawning playing object
- Teams management – every player can belong to a team (select team when joining, or change it later), or be a spectator
- Map cycle – automatic map changing on time interval
- Round system – round ends on time limit or on team victory, causing all players to be respawned
- Spectating other players while dead
- FFA – free for all mode
- Scoreboard
- Chat
- Menu system – hierarchical organization of menus – builtin main menu, start game menu, join game menu, settings menu, pause menu, ingame menu
- Cvars
- Settings menu – allows to edit configuration (cvars) in a separate menu, and save/load them to playerprefs
- Console – displays game log, allows commands to be entered
- Console commands – can be used for server management, interaction between client and server, etc
- Kill events – UI area for displaying kill events (when one player kills another)
- UI for using all available features
- Batch mode – support for running in batch mode (as a dedicated server)
- Bunch of utility scripts
- Demo scene to get you started
- Extremely easy to extend
- One click setup from editor menu
- many others...

To mention again, the framework is fully extendable. Scripts are communicating using broadcasted messages – new scripts can be added to catch these messages and change behaviour. You can detect almost any event in a game by subscribing to class events.



## Download

Download project as [zip archive](https://github.com/in0finite/uGameCore/archive/master.zip). Demo builds are available [here](https://drive.google.com/open?id=1cUicZgCwRhTL6TZtftThvQsAOY2oUJpR).

## One click installation

There is an editor menu which allows you to setup the project in one click (located at uGameCore => Setup => One click setup).

So, go ahead and press that menu. If everything went fine (there are no errors or warnings in the console),
then you are good to go => hit the Play button.

## Manual installation

If you encounter any errors or warnings during one-click setup, you should try to fix them.
It's not that difficult, all possible errors and warnings are logged to console, so you can quickly see
what is the problem.

Anyway, these are the steps which performs one-click-setup (which you can perform manually, if the
setup doesn't work):

- create new scenes as copies of original startup and offline scenes

- add them to build settings

- add demo scenes to build settings

- open newly created startup scene

- create modules (prefabs)

- group modules (you can use menu)

- assign offline scene in NetworkManager

- populate map cycle from build settings

- save scene


## Links

- [documentation](docs/documentation.md)
Framework is fully extendable. Scripts are communicating using broadcasted messages – new scripts can be added to catch these messages and change behaviour. You can detect almost any event in a game by subscribing to C# events.

- [examples](docs/examples/)

- [screenshots](screenshots.md)
## Demo

- [todo list](docs/todo.md)
TODO: add WebGL demo


## Feedback
## Support

If you have any questions, feel free to contact us, or post an issue.
Non-stop discord support.

43 changes: 0 additions & 43 deletions UGameCore/readme.txt

This file was deleted.

8 changes: 0 additions & 8 deletions UGameCore/readme.txt.meta

This file was deleted.

0 comments on commit d62c103

Please sign in to comment.