Private
Public Access
1
0

Add initial project structure for "Escape From Teacher" game: server, client, level editor, and asset framework. Includes game rendering, physics, WebSocket server, NATS integration, and asset management setup.

This commit is contained in:
Sebastian Unterschütz
2026-01-01 15:21:50 +01:00
parent 3099ac42c0
commit 4b2995846e
65 changed files with 1943 additions and 0 deletions

View File

@@ -0,0 +1,184 @@
{
"assets": {
"baskeball": {
"ID": "baskeball",
"Type": "obstacle",
"Filename": "baskeball.png",
"Scale": 0.1,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -3,
"DrawOffY": -158,
"Color": {},
"Hitbox": {
"OffsetX": 3,
"OffsetY": 64,
"W": 99,
"H": 96,
"Type": ""
}
},
"coin": {
"ID": "coin",
"Type": "obstacle",
"Filename": "coin.png",
"Scale": 0.1,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -7,
"DrawOffY": -163,
"Color": {},
"Hitbox": {
"OffsetX": 6,
"OffsetY": 63,
"W": 94,
"H": 100,
"Type": ""
}
},
"desk": {
"ID": "desk",
"Type": "obstacle",
"Filename": "desk.png",
"Scale": 0.1,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -2,
"DrawOffY": -155,
"Color": {},
"Hitbox": {
"OffsetX": 4,
"OffsetY": 65,
"W": 100,
"H": 93,
"Type": ""
}
},
"eraser": {
"ID": "eraser",
"Type": "obstacle",
"Filename": "eraser.png",
"Scale": 0.05,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -29,
"DrawOffY": -61,
"Color": {},
"Hitbox": {
"OffsetX": 30,
"OffsetY": 14,
"W": 73,
"H": 47,
"Type": ""
}
},
"g-l": {
"ID": "g-l",
"Type": "obstacle",
"Filename": "g-l.png",
"Scale": 0.5,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -65,
"DrawOffY": -381,
"Color": {},
"Hitbox": {
"OffsetX": 64,
"OffsetY": 1,
"W": 121,
"H": 384,
"Type": ""
}
},
"h-l": {
"ID": "h-l",
"Type": "obstacle",
"Filename": "h-l.png",
"Scale": 0.15,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -19,
"DrawOffY": -357,
"Color": {},
"Hitbox": {
"OffsetX": 21,
"OffsetY": 2,
"W": 107,
"H": 360,
"Type": ""
}
},
"k-l-monitor": {
"ID": "k-l-monitor",
"Type": "obstacle",
"Filename": "k-l-monitor.png",
"Scale": 0.15,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -33,
"DrawOffY": -332,
"Color": {},
"Hitbox": {
"OffsetX": 7,
"OffsetY": 10,
"W": 147,
"H": 328,
"Type": ""
}
},
"pc-trash": {
"ID": "pc-trash",
"Type": "obstacle",
"Filename": "pc-trash.png",
"Scale": 0.15,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -3,
"DrawOffY": -240,
"Color": {},
"Hitbox": {
"OffsetX": 5,
"OffsetY": 111,
"W": 154,
"H": 132,
"Type": ""
}
},
"platform_1767135546": {
"ID": "platform_1767135546",
"Type": "platform",
"Filename": "platform_1767135546.png",
"Scale": 1,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": 1,
"DrawOffY": -34,
"Color": {},
"Hitbox": {
"OffsetX": 0,
"OffsetY": 2,
"W": 126,
"H": 28,
"Type": ""
}
},
"player": {
"ID": "player",
"Type": "obstacle",
"Filename": "player.png",
"Scale": 7,
"ProcWidth": 0,
"ProcHeight": 0,
"DrawOffX": -53,
"DrawOffY": -216,
"Color": {},
"Hitbox": {
"OffsetX": 53,
"OffsetY": 12,
"W": 108,
"H": 203,
"Type": ""
}
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 MiB

View File

@@ -0,0 +1,36 @@
{
"ID": "chunk_01",
"Width": 50,
"Objects": [
{
"AssetID": "platform_1767135546",
"X": 419,
"Y": 517
},
{
"AssetID": "platform_1767135546",
"X": 549,
"Y": 516
},
{
"AssetID": "platform_1767135546",
"X": 682,
"Y": 449
},
{
"AssetID": "platform_1767135546",
"X": 808,
"Y": 449
},
{
"AssetID": "eraser",
"X": 1280,
"Y": 529
},
{
"AssetID": "pc-trash",
"X": 1960,
"Y": 533
}
]
}

BIN
cmd/client/assets/coin.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

BIN
cmd/client/assets/desk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

BIN
cmd/client/assets/g-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

BIN
cmd/client/assets/h-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 MiB

BIN
cmd/client/assets/k-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

BIN
cmd/client/assets/k-m.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

BIN
cmd/client/assets/m-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 KiB

BIN
cmd/client/assets/p-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 384 B

BIN
cmd/client/assets/r-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

BIN
cmd/client/assets/t-s.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

BIN
cmd/client/assets/w-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB