Compare commits

..

11 Commits

Author SHA1 Message Date
c16a913ba2 Update README with game details, add images, and enhance .gitignore for log files 2026-04-26 16:13:01 +02:00
ede03ad026 Update tileset and settings, enhance logging
- Updated tileset configuration in 'tileset.tsj' to include new tiles and adjust dimensions.
- Added 'settings.json' for key bindings related to climbing and movement actions.
- Enhanced game logging in 'game.log' to track game start events and map loading.
- Updated the game binary to the latest version.
2026-04-26 15:59:44 +02:00
ef550044ad Update tileset and game log for improved asset management and debugging
- Modified tileset configuration to include multiple tile images with updated dimensions.
- Enhanced game log to provide detailed startup information and entity loading for room1.
- Updated binary file for the game executable.
added climebol laders
2026-04-26 12:13:55 +02:00
a6c8044e4a Updated map 2026-04-26 02:39:13 +02:00
16ae22bcba Add new map and tileset files for Windows release
- Created test.tmj and test.tsj files in the maps directory.
- Added tileset.tsj with configuration for the MainTileset including image path and dimensions.
2026-04-26 02:35:31 +02:00
93abb31ba7 Implementerat Tiled JSON Map parser med portaler mellan 2 st hundramappars rum 2026-04-26 00:55:14 +02:00
feabe7366c Refaktoriserat kartan till en solid 3D-Array [][][]Entity och adderat dubbla views (TopDown & SideView) var spelaren laddar sina Animation Frames 2026-04-26 00:24:28 +02:00
b250629e34 Lagt till bas-karta med sky-blue bakgrund och fungerande plattformshopp 2026-04-25 23:21:56 +02:00
56934135ab Skapat grundprojekt: Huvudmeny och Spel-scen as med hoppmakanik och AABB kollisions-grund 2026-04-25 22:46:10 +02:00
680a6f5f9e Uppdaterat plan, README och lagt till VS Code bygg-tasks 2026-04-25 22:45:09 +02:00
a5ab983206 Initierat Go modul och laddat ner referens-sprites 2026-04-25 22:44:32 +02:00
387 changed files with 207026 additions and 13 deletions

1
.gitignore vendored
View File

@@ -25,3 +25,4 @@ go.work.sum
# env file # env file
.env .env
*.log

46
.vscode/tasks.json vendored Normal file
View File

@@ -0,0 +1,46 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "Build Windows",
"type": "shell",
"command": "mkdir -p release/windows && go build -o release/windows/regin_mountain_game.exe . && cp -r assets release/windows/ && mkdir -p release/windows/assets/maps && cp mapp-maker/*.tmj mapp-maker/*.tsj release/windows/assets/maps/ 2>/dev/null || true",
"options": {
"env": {
"GOOS": "windows",
"GOARCH": "amd64"
}
},
"group": "build",
"problemMatcher": [
"$go"
]
},
{
"label": "Build Linux",
"type": "shell",
"command": "mkdir -p release/linux && go build -o release/linux/regin_mountain_game . && cp -r assets release/linux/ && mkdir -p release/linux/assets/maps && cp mapp-maker/*.tmj mapp-maker/*.tsj release/linux/assets/maps/ 2>/dev/null || true",
"options": {
"env": {
"GOOS": "linux",
"GOARCH": "amd64"
}
},
"group": "build",
"problemMatcher": [
"$go"
]
},
{
"label": "Build All",
"dependsOn": [
"Build Windows",
"Build Linux"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}

View File

@@ -1,27 +1,93 @@
# Regin_mountain_of_treasures # Regin_mountain_of_treasures
Ett spel som beretar historier om dvärgen Regin och hans äventyr
Baserat på mitt didigare skol projekt Maze ## Regin: Mountain of Treasures
spelet kommer att handla om dvärgen Regin och hans kamp att få tag på sin fars skat och Andvaranaut (en magisk ring) Storin är baserad på historier från eddan Ett spel som berättar historier om dvärgen Regin och hans äventyr.
tillägas ska göras att ändringar till historien har gjorts. Projektet bygger vidare på mitt tidigare skolprojekt Maze, men har vuxit till ett eget spel med tydligare värld, starkare tema och en mer egen presentation.
Regin var en dvärg och berömd smed, son till Reidmar också känd som Hreidmar, bror till Fafne och Utter. Spelet handlar om dvärgen Regin och hans kamp att få tag på sin fars skatt och Andvaranaut, den magiska ringen. Historien är baserad på berättelser från Eddan, men tilläggas ska att ändringar till historien har gjorts för att passa spelet bättre.
Regin och Fafne är ute efter att döda deras far för att komma över hans skat och ringen Andvaranaut. Regin var en dvärg och berömd smed, son till Reidmar, också känd som Hreidmar, och bror till Fafne och Utter. Regin och Fafne är ute efter att döda deras far för att komma över hans skatt och ringen Andvaranaut.
kommer dom lykas? Kommer dom lyckas?
om du käner till historien om Andvaranaut så kan du lista ut hur spelet kommer att sluta :) Om du känner till historien om Andvaranaut så kan du kanske lista ut hur spelet kommer att sluta.
eller gör du? Eller gör du?
info ## Spelet Just Nu
Här är några bilder som visar hur spelet ser ut just nu, med sido-vy till vänster och top-vy till höger.
### Utforskning och dubbel vy
![Översikt av spelvärlden](release/Progres_images/Skärmbild_20260426_160012.png)
### Klättring, nivåskillnader och lager
![Klättring och lager i världen](release/Progres_images/Skärmbild_20260426_160136.png)
### Större objekt och miljödetaljer
![Sten, träd och höjdskillnader](release/Progres_images/Skärmbild_20260426_160201.png)
### Inomhusyta och tätare scen
![Interiör och kompakt spelrum](release/Progres_images/Skärmbild_20260426_160235.png)
## Teknik I Korthet
Projektet använder en liten men tydlig teknikstack:
- Go som huvudspråk för spelkod, struktur och spel-loop.
- Ebitengine för rendering, fönsterhantering, input och 2D-grafik.
- MathGL för 3D-vektorer och positionshantering i spelvärlden.
- Tiled JSON-kartor för att bygga upp rum och lager i världen.
- JSON-drivna entity-definitioner för block, portaler, stegar och större miljöobjekt.
- En egen renderingsmodell med dubbel vy: sido-vy och top-vy som visar samma värld från två håll samtidigt.
## Mer Om Spelet
Arkitekturen bygger på att världen tolkas som lager i flera led, där spelaren rör sig i en 3D-liknande struktur men spelet visas i två synkade 2D-vyer. Det gör att mark, höjd, djup, klättring och större objekt kan läsas på ett tydligare sätt direkt i spelbilden.
Målet är att låta myt, utforskning och rumslig förståelse arbeta tillsammans, så att spelet både känns som ett äventyr och som en värld man måste lära sig att läsa rätt.
## Inspiration Och Info
https://sv.wikipedia.org/wiki/Regin https://sv.wikipedia.org/wiki/Regin
https://sv.wikipedia.org/wiki/Gram_(mytologi) https://sv.wikipedia.org/wiki/Gram_(mytologi)
https://sv.wikipedia.org/wiki/Reidmar https://sv.wikipedia.org/wiki/Reidmar
## Bygginstruktioner
### Systemkrav & Beroenden
Eftersom spelet använder Ebitengine behöver du ha följande installerat för att kunna kompilera.
**På Windows:**
Inget speciellt krävs utöver en modern version av Go. Ebitengine klarar sig bra för Windows-bygge även på Windows. Ibland kan gcc eller MinGW vara bra att ha vid ljud-tjafs eller cgo-relaterade problem.
**På Linux:**
Du behöver installera Go samt följande C-bibliotek för X11 och ljud:
```bash
sudo apt-get install libc6-dev libgl1-mesa-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev libxxf86vm-dev libasound2-dev pkg-config
```
### Bygg Spelet Med VS Code Tasks
Spelet stödjer publisering via fördefinierade VS Code Tasks. Gå till `Terminal -> Run Task...` i VS Code.
- **Build Windows**: Kompilerar projektet för Windows (.exe) i mappen `release/windows`.
- **Build Linux**: Kompilerar projektet för Linux i mappen `release/linux`.
- **Build All**: Kompilerar för båda ovanstående plattformar.
### Bygg Manuellt
- Linux: `GOOS=linux go build -o release/linux/regin_mountain_game .`
- Windows: `GOOS=windows go build -o release/windows/regin_mountain_game.exe .`

85
assets/entity_defs.json Normal file
View File

@@ -0,0 +1,85 @@
{
"entity_types": {
"ground_grass": {
"id": 1,
"tiled_id": 1,
"solid": true,
"climbable": false,
"sprites": {
"top": "Tile_31",
"side": "Tile_02"
}
},
"ground_dirt": {
"id": 2,
"tiled_id": 2,
"solid": true,
"climbable": false,
"sprites": {
"top": "Tile_12",
"side": "Tile_12"
}
},
"ground_grass_2": {
"id": 3,
"tiled_id": 3,
"solid": true,
"climbable": false,
"sprites": {
"top": "Tile_31",
"side": "Tile_31"
}
},
"portal_grass": {
"id": 4,
"tiled_id": 4,
"solid": false,
"sprites": {
"top": "../Grass/2.png",
"side": "../Grass/3.png"
},
"target_map": "room2"
},
"ladder_1": {
"id": 5,
"tiled_id": 5,
"solid": false,
"climbable": true,
"sprites": {
"top": "../Ladders/1",
"side": "../Ladders/1"
}
},
"stone_1": {
"id": 6,
"tiled_id": 6,
"solid": true,
"sprites": {
"top": "../Stones/1",
"side": "../Stones/1"
}
},
"tree_1": {
"id": 7,
"tiled_id": 7,
"solid": true,
"sprites": {
"top": "../Trees/1",
"side": "../Trees/1"
}
},
"player": {
"id": 100,
"solid": true,
"sprites": {
"top": "player_idle",
"side": "player_idle"
},
"animations": {
"idle": {"frames": [0], "speed": 1},
"walk": {"frames": [1, 2, 3, 4], "speed": 5},
"jump": {"frames": [5, 6], "speed": 4}
}
}
}
}

4
assets/images/.directory Normal file
View File

@@ -0,0 +1,4 @@
[Dolphin]
PreviewsShown=true
Timestamp=2018,1,22,14,58,44
Version=4

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

BIN
assets/images/Boxes/1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/Boxes/2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/Boxes/3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/Boxes/4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
assets/images/Boxes/5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/Boxes/6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/Grass/1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
assets/images/Grass/10.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 999 B

BIN
assets/images/Grass/2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
assets/images/Grass/3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1021 B

BIN
assets/images/Grass/4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1010 B

BIN
assets/images/Grass/5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1012 B

BIN
assets/images/Grass/6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 998 B

BIN
assets/images/Grass/7.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 995 B

BIN
assets/images/Grass/8.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1006 B

BIN
assets/images/Grass/9.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 985 B

BIN
assets/images/Ladders/1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
assets/images/Ladders/2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1011 B

BIN
assets/images/Ladders/3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1020 B

BIN
assets/images/Ladders/4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/Ladders/5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
assets/images/Ladders/6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1017 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1016 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1022 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1022 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1020 B

BIN
assets/images/Ridges/1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
assets/images/Ridges/2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/Ridges/3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
assets/images/Ridges/4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Some files were not shown because too many files have changed in this diff Show More