Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 17 additions & 17 deletions .github/workflows/tec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,35 +21,35 @@ jobs:
os:
[
windows-latest,
windows-2019,
windows-2022,
ubuntu-latest,
ubuntu-20.04,
macOS-latest,
ubuntu-22.04,
macos-latest-large,
]
arch: [x86, x64]
include:
- os: windows-latest
vcpkgTripletOs: windows
- os: windows-2019
- os: windows-2022
vcpkgTripletOs: windows
- os: ubuntu-latest
vcpkgTripletOs: linux
- os: ubuntu-20.04
- os: ubuntu-22.04
vcpkgTripletOs: linux
- os: macOS-latest
- os: macos-latest-large
vcpkgTripletOs: osx
exclude:
- os: ubuntu-latest
arch: x86
- os: ubuntu-20.04
- os: ubuntu-22.04
arch: x86
- os: macOS-latest
- os: macos-latest-large
arch: x86
env:
buildDir: "${{ github.workspace }}/build"
BUILD_PRESET: release
CONFIG_PRESET: ninja-multi-vcpkg-ci
VCPKG_COMMIT_ID: 10b7a178346f3f0abef60cecd5130e295afd8da4
VCPKG_COMMIT_ID: dd3097e305afa53f7b4312371f62058d2e665320
VCPKG_DEFAULT_TRIPLET: ${{ matrix.arch }}-${{ matrix.vcpkgTripletOs }}
steps:
- uses: actions/checkout@v4
Expand All @@ -72,9 +72,9 @@ jobs:
buildPreset: ${{ env.CONFIG_PRESET }}-${{ env.BUILD_PRESET }}
testPreset: ${{ env.CONFIG_PRESET }}-${{ env.BUILD_PRESET }}
- name: Upload the build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: "trillek-${{ matrix.os }}"
name: "trillek-${{ matrix.os }}-${{ matrix.arch }}"
path: |
assets/
${{ env.CLIENT_BUILD_DIR }}/trillek-client
Expand Down Expand Up @@ -153,8 +153,8 @@ jobs:
windows-latest,
windows-2016,
ubuntu-latest,
ubuntu-20.04,
macOS-latest,
ubuntu-22.04,
macos-latest-large,
]
arch: [x64]
if: startsWith(github.ref, 'refs/tags/v')
Expand All @@ -163,12 +163,12 @@ jobs:
- name: Download a single artifact
uses: actions/download-artifact@v4
with:
name: "trillek-${{ matrix.os }}"
name: "trillek-${{ matrix.os }}-${{ matrix.arch }}"
- name: Package release
run: |
zip --junk-paths -r -u trillek-${{ matrix.os }}.zip build/client
zip --junk-paths -r -u trillek-${{ matrix.os }}.zip build/server
zip -r -u trillek-${{ matrix.os }}.zip assets/
zip --junk-paths -r -u trillek-${{ matrix.os }}-${{ matrix.arch }}.zip build/client
zip --junk-paths -r -u trillek-${{ matrix.os }}-${{ matrix.arch }}.zip build/server
zip -r -u trillek-${{ matrix.os }}-${{ matrix.arch }}.zip assets/
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.20)
cmake_minimum_required(VERSION 3.28)
project(trillek VERSION 0.1 DESCRIPTION "Trillek Game Engine" LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 20)
Expand Down
18 changes: 18 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,24 @@ Install the following. This is a pretty extensive list and may be more than need
* `ninja-multi-vcpkg-debug` - Debug configuration test preset
* `ninja-multi-vcpkg-release` - Release configuration test preset

# Configuration
The client can be configured using a Lua configuration file at `assets/scripts/config.lua`. If the file doesn't exist, default values will be used.

## Auto-Connect for Local Development
For local development, you can enable automatic connection to a local server by setting the following in your config file:

```lua
-- Window settings
window_width = 1024
window_height = 768

-- Auto-connect settings (for local development)
auto_connect = true
default_username = "player"
```

When `auto_connect` is enabled and `default_username` is set, the client will automatically connect to `localhost` on startup, eliminating the need to manually enter credentials each time. If auto-connect fails, the connection window will be shown as normal.

# Documentation
Documentation is done via Doxygen for C++ code and supplementary docs must be maintained for the Lua API in `docs/`.

Expand Down
1 change: 1 addition & 0 deletions client/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ add_interface_lib(
TARGET
${CLIENT_LIB_NAME}
FILE_LIST
client-app.cpp
game.cpp
imgui-system.cpp
client-game-state-queue.cpp
Expand Down
Loading
Loading