Skip to content

Commit

Permalink
Merge branch 'main' into stable
Browse files Browse the repository at this point in the history
  • Loading branch information
afwbkbc committed Nov 8, 2023
2 parents 02b54fc + 5520fc7 commit 480403f
Show file tree
Hide file tree
Showing 3 changed files with 106 additions and 61 deletions.
100 changes: 50 additions & 50 deletions .github/workflows/c-cpp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,53 +12,53 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: benjlevesque/[email protected]
id: short-sha
with:
length: 7
- run: echo $SHA
env:
SHA: ${{ steps.short-sha.outputs.sha }}
- name: install_dependencies
run: |
sudo apt-get update
sudo apt-get install libfreetype-dev libsdl2-dev libsdl2-image-dev libglu-dev libglew-dev libossp-uuid-dev libyaml-cpp-dev
- name: cmake64
run: cmake -DCMAKE_BUILD_TYPE=Portable64 .
- name: make64
run: make
- name: pack64
run: tar zcvf GLSMAC-v0.2-${{ env.SHA }}-bin64.tar.gz bin/
- name: publish
uses: actions/upload-artifact@v3
with:
name: GLSMAC-ubuntu-bin
path: |
./GLSMAC-v0.2-${{ env.SHA }}-bin64.tar.gz
- uses: dev-drprasad/[email protected]
with:
keep_latest: 4
delete_tags: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: v0.2-${{ env.SHA }}
release_name: v0.2-${{ env.SHA }}
draft: false
prerelease: false
- name: Upload Release Asset 64
id: upload-release-asset-64
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps - name: upload
asset_path: ./GLSMAC-v0.2-${{ env.SHA }}-bin64.tar.gz
asset_name: GLSMAC-v0.2-${{ env.SHA }}-bin64.tar.gz
asset_content_type: application/gzip
- uses: actions/checkout@v3
- uses: benjlevesque/[email protected]
id: short-sha
with:
length: 7
- run: echo $SHA
env:
SHA: ${{ steps.short-sha.outputs.sha }}
- name: install_dependencies
run: |
sudo apt-get update
sudo apt-get install libfreetype-dev libsdl2-dev libsdl2-image-dev libglu-dev libglew-dev libossp-uuid-dev libyaml-cpp-dev
- name: cmake64
run: cmake -DCMAKE_BUILD_TYPE=Portable64 .
- name: make64
run: make
- name: pack64
run: tar zcvf GLSMAC-v0.3-${{ env.SHA }}-bin64.tar.gz bin/
- name: publish
uses: actions/upload-artifact@v3
with:
name: GLSMAC-ubuntu-bin
path: |
./GLSMAC-v0.3-${{ env.SHA }}-bin64.tar.gz
- uses: dev-drprasad/[email protected]
with:
keep_latest: 4
delete_tags: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: v0.3-${{ env.SHA }}
release_name: v0.3-${{ env.SHA }}
draft: false
prerelease: false
- name: Upload Release Asset 64
id: upload-release-asset-64
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps - name: upload
asset_path: ./GLSMAC-v0.3-${{ env.SHA }}-bin64.tar.gz
asset_name: GLSMAC-v0.3-${{ env.SHA }}-bin64.tar.gz
asset_content_type: application/gzip
65 changes: 55 additions & 10 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,72 @@
# Change Log

## [v0.3] - 2023-11-08

### Added

- Slots, players, connections, local accounts, GSIDs, binding GSIDs to slots when creating new game
- Multiplayer lobby: faction selection, slots management, kicks and bans, map settings configuration, map loading, readycheck
- Hosting and joining games via lobby
- Joining running games
- Map downloading from server to players
- Networking support on Windows
- In-game chat
- New command-line parameters:

--nosound

--skipintro

--windowed

--window-size

--quickstart-mapsize

--prefix

### Changed

- Separate thread for game/map processing
- Separate thread for networking

### Fixed

- Fullscreen toggling
- Overlapping objects clickthroughs and duplicate mouseovers
- Stuck mouseovers
- Bug when packets not fitting into buffer caused network freeze
- Network errors now cause disconnects instead of crashes
- Clang warnings
- Coding style

## [v0.2] - 2023-04-03

### Added

- Entering game mode via main menu:

Start Game -> Make Random Map or Customize Random Map -> ... -> Play With Standard Rules
Quickstart
Start Game -> Load Map File
Start Game -> Make Random Map or Customize Random Map -> ... -> Play With Standard Rules

Quickstart

Start Game -> Load Map File

- Simple perlin-based map generator

default map sizes have ratio of 2:1 instead of original 1:1 because 2:1 looks better on wide screens
default map sizes have ratio of 2:1 instead of original 1:1 because 2:1 looks better on wide screens

total number of tiles for every size are approximately same as in original
total number of tiles for every size are approximately same as in original

- Map rendering (tiles, water, coasts, sprites, minimap)
- Most of in-game UI
- Map editor

activated by default once you're in game
activated by default once you're in game

works same as in original SMAC - select tool and brush and draw with them (left mouse - draw, right mouse - undraw)
works same as in original SMAC - select tool and brush and draw with them (left mouse - draw, right mouse - undraw)

second tool ('Cover Map') replaced with 'Moisture' tool because it makes more sense
second tool ('Cover Map') replaced with 'Moisture' tool because it makes more sense

- Map saving ( Left Menu -> EDIT MAP -> Save Map... )
- Map loading ( Left Menu -> EDIT MAP -> Load Map... )
Expand All @@ -35,25 +76,29 @@
- Small 'GLSMAC' label with version in top right corner of main menu to avoid confusion

### Changed

- Alien Crossfire background replaced with Alpha Centauri background in main menu
- Improved command-line syntax
- GLSMAC.exe can now be placed in SMAC directory and launched without arguments
- Disabled memory debug and gdb by default in debug builds

### Fixed

- Windows builds
- Loading resources from case-insensitive filesystems
- Excessive redraws of UI
- Slow texts rendering
- Some crashes

### Known bugs

- Small line artifacts between tiles on map zoomout
- Crash when loading large maps with very low free RAM

## [v0.1] - 2023-01-24

### Added

- Basic engine functions (window initialization, sounds, textures, netcode, fonts, etc)
- Intro logo
- Main menu
Expand Down
2 changes: 1 addition & 1 deletion src/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#define GLSMAC_LAST_COMMIT "???????"
#endif

#define GLSMAC_VERSION "v0.2"
#define GLSMAC_VERSION "v0.3"

#define GLSMAC_VERSION_FULL ( (std::string) "GLSMAC " + GLSMAC_VERSION + "-" + GLSMAC_LAST_COMMIT )
#define GLSMAC_URL ( (std::string) "<https://github.com/afwbkbc/glsmac>" )
Expand Down

0 comments on commit 480403f

Please sign in to comment.