Skip to content
Merged

v1.2 #64

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
2d8111e
Add `AssetBundle` loader and registry (closes #63)
IExploitableMan Apr 5, 2025
716c164
Added game mode button creation api
johnklipi Apr 6, 2025
5f0938b
Refactor game mode button API
IExploitableMan Apr 6, 2025
ec953a5
Empty (closes #61)
IExploitableMan Apr 6, 2025
b2630ba
Merge branch 'main' into dev1.2
IExploitableMan Apr 11, 2025
d92059b
Add `description` field to `manifest.json` (closes #69)
IExploitableMan Apr 11, 2025
5dbf9cf
Dump localization when clicking dump data on debug (closes #68)
IExploitableMan Apr 11, 2025
c8f2dad
Fix formatting
IExploitableMan Apr 11, 2025
f843c61
Fixed custom game mods loc and added enum mapping
johnklipi Apr 12, 2025
c19d08b
Add more detailed issue description on invalid manifest (closes #67)
IExploitableMan Apr 18, 2025
b9675a3
Merge
johnklipi Apr 21, 2025
6e8da2d
Merge
johnklipi Apr 27, 2025
23bc9c6
Modular patch.json (closes #75)
IExploitableMan Apr 30, 2025
60c8df3
Dynamic tech branch angle (#83)
HighFlyer-222 May 1, 2025
341e971
Added implementation for custom flood sprites for aquarion skins. Clo…
johnklipi May 3, 2025
c051479
Added dinamic sprite info update
johnklipi May 3, 2025
41817ee
#76 + #66 (#84)
johnklipi May 7, 2025
319b08d
Rewrote MRB's custom embark gld setting (#87)
johnklipi May 9, 2025
7ac84ff
Attract resource type and terrain type support in gld (#88)
MartinRB45534 May 20, 2025
c41e216
Fix dynamic tech branches rotating the vanilla tech tree (#85)
HighFlyer-222 May 20, 2025
9262d6d
Merge
johnklipi May 22, 2025
cfb74e6
Refactor localization keys and improve JSON converter classes; update…
IExploitableMan Jun 12, 2025
f981661
Save/flush PlayerPrefs after updating the incompatibility warning ver…
IExploitableMan Jun 12, 2025
0321d6c
Loader patch loading refactor + Custom weapons and sprites for them (…
johnklipi Jun 22, 2025
c249d97
Added tribe preview dump, Closes #90
johnklipi Jun 22, 2025
1f9cd49
Prefabs (#95)
johnklipi Jun 29, 2025
3a6558b
AutoUpdate (#74)
IExploitableMan Jun 30, 2025
d840cd2
Merge
johnklipi Jun 30, 2025
89656c2
Merge branch 'dev1.2' of https://github.com/PolytalesDevTeam/PolyMod …
johnklipi Jun 30, 2025
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
4 changes: 2 additions & 2 deletions PolyMod.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
https://polymod.dev/nuget/v3/index.json;
</RestoreAdditionalProjectSources>
<Configurations>IL2CPP</Configurations>
<Version>1.1.9-pre</Version>
<PolytopiaVersion>2.13.2.14360</PolytopiaVersion>
<Version>1.2.0-pre</Version>
<PolytopiaVersion>2.13.0.14218</PolytopiaVersion>
<Authors>PolyModdingTeam</Authors>
<Description>The Battle of Polytopia's mod loader.</Description>
<NoWarn>IDE0130</NoWarn>
Expand Down
19 changes: 13 additions & 6 deletions installer/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
"win32": "win",
"darwin": "macos",
}[sys.platform]
BEPINEX = f"733/BepInEx-Unity.IL2CPP-{OS}-x64-6.0.0-be.733%2B995f049"
POLYMOD = "https://github.com/PolyModdingTeam/PolyMod/releases/latest/download/PolyMod.dll"
BEPINEX = "https://polymod.dev/data/bepinex.txt"
POLYMOD = "https://api.github.com/repos/PolyModdingTeam/PolyMod/releases"


def resource_path(path):
Expand Down Expand Up @@ -54,6 +54,7 @@ def prepare(target):
return
path_entry.configure(state=customtkinter.DISABLED)
browse_button.configure(state=customtkinter.DISABLED)
prerelease_checkbox.destroy()
install_button.destroy()
uninstall_button.destroy()
progress_bar = customtkinter.CTkProgressBar(app, determinate_speed=50 / 2)
Expand All @@ -65,13 +66,16 @@ def prepare(target):
def install(path):
to_zip(
requests.get(
f"https://builds.bepinex.dev/projects/bepinex_be/{BEPINEX}.zip"
requests.get(BEPINEX).text.strip().replace("{os}", OS)
)
).extractall(path)
progress_bar.step()

for release in requests.get(POLYMOD).json():
if release["prerelease"] and not prerelease_checkbox.get(): continue
latest = release
open(path + "/BepInEx/plugins/PolyMod.dll", "wb").write(
requests.get(POLYMOD).content
requests.get(latest["assets"][0]["browser_download_url"]).content
)
progress_bar.step()

Expand Down Expand Up @@ -133,14 +137,17 @@ def quit():
app, placeholder_text="Game path", width=228)
browse_button = customtkinter.CTkButton(
app, text="Browse", command=browse, width=1)
prerelease_checkbox = customtkinter.CTkCheckBox(
app, text="Prerelease", width=1)
install_button = customtkinter.CTkButton(
app, text="Install", command=lambda: prepare(install))
uninstall_button = customtkinter.CTkButton(
app, text="Uninstall", command=lambda: prepare(uninstall))

path_entry.grid(column=0, row=0, padx=5, pady=5)
browse_button.grid(column=1, row=0, padx=(0, 5), pady=5)
install_button.grid(column=0, row=1, columnspan=2, padx=5, pady=5)
uninstall_button.grid(column=0, row=2, columnspan=2, padx=5, pady=5)
prerelease_checkbox.grid(column=0, row=1, columnspan=2, padx=5, pady=5)
install_button.grid(column=0, row=2, columnspan=2, padx=5, pady=5)
uninstall_button.grid(column=0, row=3, columnspan=2, padx=5, pady=5)

app.mainloop()
52 changes: 50 additions & 2 deletions resources/localization.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@
"German (Germany)": "{0} Willkommen! {1}\nDiese Mods sind gerade eben geladen:"
},
"polymod_hub_mod": {
"English": "Name: {0}\nStatus: {1}\nAuthors: {2}\nVersion: {3}",
"Russian": "Имя: {0}\nСтатус: {1}\nАвторы: {2}\nВерсия: {3}",
"English": "Name: {0}\nStatus: {1}\nAuthors: {2}\nVersion: {3}\nDescription: {4}",
"Russian": "Имя: {0}\nСтатус: {1}\nАвторы: {2}\nВерсия: {3}\nОписание: {4}",
"Turkish": "İsim: {0}\nDurum: {1}\nYaratıcılar: {2}\nSürüm: {3}",
"Spanish (Mexico)": "Titulo: {0}\nEstado: {1}\nPublicador: {2}\nVersion: {3}",
"French (France)": "Titre: {0}\nEtat: {1}\nAuteurs: {2}\nVersion: {3}",
Expand Down Expand Up @@ -160,5 +160,53 @@
"Portuguese (Brazil)": "Essa versão do PolyMod não foi desenvolvida para a versão atual do aplicativo e pode não funcionar corretamente!",
"Elyrion": "πȱ∫ỹmȱδ ƒƒƒƒƒƒƒ ŋȱŧ ȱrrȱ #₺rr∑ŋŧ ƒƒƒƒƒƒƒ ỹ maỹ ŋȱŧ ~ȱr§ #ȱrr∑#ŧ∫ỹ!",
"German (Germany)": "Diese Version von PolyMod ist nicht für die aktuelle Version der Anwendung ausgelegt und könnte nicht funktionieren!"
},
"polymod_debug": {
"English": "Debug",
"Russian": "Дебаг"
},
"polymod_autoupdate": {
"English": "Auto-update",
"Russian": "Автообновление"
},
"polymod_autoupdate_alpha": {
"English": "Include alphas",
"Russian": "Include alphas"
},
"polymod_autoupdate_description": {
"English": "New update available!",
"Russian": "Доступно новое обновление!"
},
"polymod_autoupdate_update": {
"English": "Update",
"Russian": "Обновить"
},
"polymod_hub_config": {
"English": "CONFIG",
"Russian": "КОНФИГ"
},
"polymod_hub_config_enable": {
"English": "ENABLE {0}",
"Russian": "ВКЛЮЧИТЬ {0}"
},
"polymod_hub_config_disable": {
"English": "DISABLE {0}",
"Russian": "ВЫЛЮЧИТЬ {0}"
},
"polymod_config_setto": {
"English": "{0} is set to {1}!",
"Russian": "{0} задан на {1}!"
},
"polymod_hub_spriteinfo_update": {
"English": "UPDATE SPRITES",
"Russian": "ОБНОВИТЬ СПРАЙТЫ"
},
"polymod_spriteinfo_updated": {
"English": "Sprite info for mod {0} updated!",
"Russian": "Данные спрайтов обновлены для мода {0}!"
},
"polymod_spriteinfo_notupdated": {
"English": "No sprite infos were found!",
"Russian": "Данные спрайтов не найдены!"
}
}
1 change: 1 addition & 0 deletions src/Json/EnumCacheJson.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using System.Text.Json.Serialization;

namespace PolyMod.Json;

internal class EnumCacheJson<T> : JsonConverter<T> where T : struct, Enum
{
public override T Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
Expand Down
1 change: 1 addition & 0 deletions src/Json/Vector2Json.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
using UnityEngine;

namespace PolyMod.Json;

internal class Vector2Json : JsonConverter<Vector2>
{
public override Vector2 Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
Expand Down
1 change: 1 addition & 0 deletions src/Json/VersionJson.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using System.Text.Json.Serialization;

namespace PolyMod.Json;

internal class VersionJson : JsonConverter<Version>
{
public override Version? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
Expand Down
Loading