Skip to content

Commit f076d49

Browse files
committed
Basic functional resort AI framework.
1 parent 4f2a94e commit f076d49

File tree

30 files changed

+3758
-793
lines changed

30 files changed

+3758
-793
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,5 @@ run
2323
runs
2424
run-data
2525

26-
repo
26+
repo
27+
localdeploy.settings

README.md

Lines changed: 31 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -59,30 +59,42 @@ A wishing well can be created by surrounding a 2x2 puddle of water (depth 1) wit
5959
## Current Status
6060

6161
This mod can best be described as a "pre-alpha" state. It functionality may change rapidly and without warning.
62-
"Wishing Well" Interface for spending earned income (IN PROGRESS)
63-
- Rituals driven by datapack (completed)
64-
- Integrated with JEI (completed)
62+
63+
Building: Resort [In Progress]
64+
Leisure time / resorts / vacations (Resort hut w/custom needs items)
65+
- Research: Unlock Resort
66+
- Job: Guest Services [In Progress]
67+
- Job: Mixologist
68+
- Citizen Action: "Burnout" (like an illness, but causes them to go to the resort instead of the hospital)
69+
- Huts to allow skill-up in non-primary/secondary stats.
70+
71+
6572

6673
### Roadmap (Roughly Prioritized)
6774

68-
Implement Coin Usage
69-
- Unlock subsequent levels of the merchant building
70-
- Ritual: Summon traders
71-
- Research: Add trader recipes
72-
- Research: Unlock resort
73-
- Ritual: Summoning
74-
75-
Happiness based on colony wealth per citizen
76-
Leisure time / resorts / vacations (Resort hut w/custom needs items; travel agency hut)
77-
Huts to allow skill-up in non-primary/secondary stats.
78-
Pet shops, pet functions, pet-related colony roles.
79-
- Sheepdog able to gather mobs and herd them to a given location.
80-
- Other pets with happiness impact.
81-
In-Game Instructions
75+
Logic: Enable building level locking
76+
Building: Pet Shop (enables pet functions, pet-related colony roles.)
77+
Pets: animal fetchers
78+
Pets: happiness multiplier
79+
Pets: burnout mitigator
80+
Pets: sickness decreased
81+
Pets: scarecrow effect
82+
Building Effect: Visitor pathing to marketplace
83+
Building Effect: Happiness based on colony wealth per citizen
84+
Item: In-Game Instructions
85+
Building Effect: Autominting + Delivery to warehouse of coins?
86+
Wishing Well Rituals: Weather changing
87+
Wishing Well Rituals: Summon Trader
88+
Research: Unlock Trader Recipes
89+
Jobs: Orchards
90+
Jobs: Bartender / brewmaster / mixologist at resort
91+
Building: Recycling
92+
Building Effect: Disenchanting
93+
Building: Train station (allows intra-colony trade)
8294
Assembling colonies into collections (empire, state, etc.)
83-
Express shipping (intracolony and inter-colony) - faster item transport. Faster people transport.
95+
96+
Random ideas that may never be implemented:
8497
Advanced Guard Towers (prevent mob spawning within an area of effect).
85-
Autominting + Delivery to warehouse of coins?
8698

8799
### Complete
88100

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ mod_name=MC Trade Post
3232
# The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default.
3333
mod_license=GPLv3
3434
# The mod version. See https://semver.org/
35-
mod_version=0.05.005-1.21.1
35+
mod_version=0.06.002-1.21.1
3636
# The group ID for the mod. It is only important when publishing as an artifact to a Maven repository.
3737
# This should match the base package used for the mod sources.
3838
# See https://maven.apache.org/guides/mini/guide-naming-conventions.html

localdeploy.bat

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
@echo off
2+
setlocal enabledelayedexpansion
3+
4+
REM === Load settings from file ===
5+
for /f "usebackq tokens=1,* delims==" %%A in ("localdeploy.settings") do (
6+
set "%%A=%%B"
7+
)
8+
9+
REM === Parse DESTINATIONS into a list, using ; as delimiter ===
10+
set i=0
11+
set "DELIM=;"
12+
set "destList="
13+
:parseLoop
14+
for /f "tokens=1* delims=%DELIM%" %%a in ("!DESTINATIONS!") do (
15+
set /a i+=1
16+
set "dest[!i!]=%%a"
17+
set "DESTINATIONS=%%b"
18+
if defined DESTINATIONS goto parseLoop
19+
)
20+
21+
set /a destCount=i
22+
23+
REM === Find latest file matching pattern ===
24+
set "latestFile="
25+
for %%F in ("%SOURCE_LOCATION%\%SOURCE_PATTERN%") do (
26+
echo examining %%F
27+
28+
if not defined latestFile (
29+
set "latestFile=%%~fF"
30+
set "latestTime=%%~tF"
31+
) else (
32+
for /f "tokens=1-3 delims=/ " %%x in ("%%~tF") do (
33+
set "fileDate=%%z%%x%%y"
34+
)
35+
for /f "tokens=1-3 delims=/ " %%x in ("!latestTime!") do (
36+
set "latestDate=%%z%%x%%y"
37+
)
38+
if !fileDate! GTR !latestDate! (
39+
set "latestFile=%%~fF"
40+
set "latestTime=%%~tF"
41+
)
42+
)
43+
)
44+
45+
if not defined latestFile (
46+
echo [ERROR] No files found matching "%SOURCE_PATTERN%" in "%SOURCE_LOCATION%"
47+
exit /b 1
48+
)
49+
50+
REM === Deploy to each destination ===
51+
for /l %%i in (1,1,%destCount%) do (
52+
set "dest=!dest[%%i]!"
53+
echo Deploying to "!dest!"
54+
55+
REM Remove old files matching REMOVAL_PATTERN
56+
for %%R in ("!dest!\%REMOVAL_PATTERN%") do (
57+
if exist "%%~fR" (
58+
echo Removing: "%%~fR"
59+
del /f /q "%%~fR"
60+
)
61+
)
62+
63+
REM Extract just the filename from the full path
64+
for %%A in ("!latestFile!") do set "latestName=%%~nxA"
65+
66+
REM Copy the latest file with correct filename
67+
echo Copying "!latestFile!" to "!dest!\!latestName!"
68+
copy /y "!latestFile!" "!dest!\!latestName!"
69+
70+
)
71+
72+
echo Deployment complete.
73+
endlocal

0 commit comments

Comments
 (0)