Commit graph

292 commits

Author SHA1 Message Date
altalk23
7816c435c4 Update macos crashlog to include base and offset 2023-09-08 16:33:22 +03:00
altalk23
69821f3e2c Add disable auto enable to Patch 2023-09-04 22:36:33 +03:00
ConfiG
17a5ac93ea
remove all deprecated functions 2023-08-31 15:27:30 +03:00
matcool
eda87da1a2
improved formatting for registers and most list on crashlogs 2023-08-27 15:51:34 -03:00
altalk23
a7181ebba8 fix objc/runtime include 2023-08-27 19:35:50 +03:00
altalk23
db02c3dd1a macos map add things 2023-08-27 19:34:33 +03:00
altalk23
7836e60b86 Merge branch 'main' into 1.2.0-dev 2023-08-27 19:16:32 +03:00
alk
e639ff3182
Update crashlog.mm 2023-08-22 16:09:43 +03:00
altalk23
794dded30f Revert "replace macos entry with objc hook" 2023-08-18 11:04:53 +03:00
altalk23
a31d07237f Add objc hooking utilities 2023-08-18 10:51:00 +03:00
altalk23
e54bd552ce replace macos entry with objc hook 2023-08-18 10:08:03 +03:00
altalk23
0e1d639002
implement missing stuff to macos 2023-08-13 21:52:34 +03:00
ConfiG
80f387d9d1
name ipc threads 2023-08-13 21:40:20 +03:00
ConfiG
7f449b996e
add utils::game::restart, reset => forceReset 2023-08-10 23:49:29 +03:00
ConfiG
53b52eaeeb
ModInfo => ModMetadata 2023-08-10 23:49:28 +03:00
ConfiG
c055933d95
sus 2023-08-04 20:50:29 +03:00
ConfiG
c2aacd9979
fix when bootstrapper present but update isn't 2023-08-04 01:18:19 +03:00
ConfiG
363d27395c
fix some warnings 2023-08-02 18:04:37 +03:00
altalk23
fe8cb42129 change getSaveDir and implement autoupdate macos 2023-08-02 15:58:37 +03:00
altalk23
b558962f2f fix main.mm includes 2023-07-08 17:08:24 +03:00
altalk23
26e38ecbab Change geode loading order, auto updating not implemented yet 2023-07-08 16:38:09 +03:00
altalk23
4ad8b486ff implement save and open panel 2023-06-25 19:52:01 +03:00
altalk23
f5e57380aa Merge branch 'main' of https://github.com/geode-sdk/geode 2023-06-24 00:45:21 +03:00
altalk23
7e70daf5a0 fix getMousePos for macchew 2023-06-24 00:45:13 +03:00
ConfiG
e98a756361
unsillify dllmain and better early errors 2023-06-11 01:53:25 +03:00
ConfiG
9acb07229b
move loadGeode call to geode's DllMain 2023-06-11 00:33:17 +03:00
ConfiG
46fab0e821
use weakly_canonical in getGameDir and getSaveDir 2023-06-10 15:49:55 +03:00
ConfiG
3eb686c4b5
improve updater code 2023-06-10 13:57:12 +03:00
matcool
8f5c229f7c
use memcpy instead of WriteProcessMemory 2023-06-09 23:08:57 -03:00
matcool
681fb481a9
fix updateGeode() when geode or the update folder doesnt exist 2023-06-09 23:04:22 -03:00
ConfiG
884825488d
actually fix mac build 2023-06-09 19:09:28 +03:00
ConfiG
73e94193ef
fix mac build
i forgor 💀
2023-06-09 18:52:44 +03:00
ConfiG
3c1529caa6
split main.cpp per platform 2023-06-09 18:29:19 +03:00
altalk23
4c4be3657a add sigbus & print the crashlog 2023-06-08 23:54:39 +03:00
altalk23
3881e65511 make stacktrace make sense even if atos is missing 2023-06-08 23:07:40 +03:00
altalk23
9b58b3376b Implement macos crashlog (wow this was hard) 2023-06-08 22:59:45 +03:00
altalk23
fd3fd9536e fix crashlog to actually build (doesnt work on macos yet) 2023-06-08 19:22:51 +03:00
altalk23
9c3759b398 Merge branch 'main' of https://github.com/geode-sdk/geode 2023-06-08 19:04:45 +03:00
qimiko
041a98ee4d
implement loader for android
compilation still won't work, pending implementations for gdstl/codegen/tuliphook. the first two should be mostly done already. may also be good to get FileWatcher, crashlog, and the file picker implemented but they aren't necessary

the libcurl.a and libssl.a files were built using
https://github.com/ibaoger/libcurl-android. they are placed in the link/android folder because putting them in the link folder confused the macOS build.

once built, the geode binary should be loaded after nativeSetApkPath is ran (otherwise the directory setup crashes). in the future it would be nice if the internal mod also did save data path redirection, as base GD is incapable of doing this

Co-authored-by: mat <26722564+matcool@users.noreply.github.com>
2023-06-05 17:42:22 -07:00
altalk23
20f461305b addresses and crashlog 2023-06-02 21:56:59 +03:00
matcool
af8d4a04de
enable ansi color support for windows console, use it on logs
this will use gray for debug, blue for info, yellow for warning and red
for error
2023-05-06 13:32:34 -03:00
altalk23
56b7b66b93 fix getSaveDir not working with nonascii paths 2023-05-06 18:31:51 +03:00
matcool
a1e9ac46b9
use wide version of winapi functions
This in theory should help with unicode support, as the old cocos2d
methods did not handle unicode well. However i was not able to test this
since vanilla gd itself doesnt launch on a non ascii path for me!
2023-05-01 11:18:35 -03:00
altalk23
b236a1daac Merge branch 'main' of https://github.com/geode-sdk/geode 2023-05-01 16:41:03 +03:00
altalk23
1323debea7 remove file::current_path, add less and more version compares 2023-05-01 16:06:06 +03:00
alk
799a6672ce
Update util.cpp 2023-05-01 15:15:27 +03:00
altalk23
dc96da012d don't rely on filesystem current_path 2023-05-01 14:47:25 +03:00
altalk23
d7ccfdef3e revert mod.json resource and move markdowns 2023-05-01 13:06:46 +03:00
altalk23
e3bda2a544 Fix resources because of broken working directory 2023-05-01 12:11:32 +03:00
altalk23
8842e8f793 fix pickFile on macos 2023-04-26 12:29:43 +03:00
altalk23
80b5b20efb fix events, resources, and minor stuff 2023-04-10 12:49:59 +03:00
camila314
8fc23e14da make mac pos accurate to cocos2d positioning 2023-03-16 20:06:19 -05:00
camila314
d7b0e09779 mouse and file picker impl for mac 2023-03-16 19:42:30 -05:00
PoweredByPie
5af15fba7c Add geode::prelude to replace USE_GEODE_NAMESPACE()
Don't use macros where not necessary!
This deprecates the old macro by way of a weird alias namespace.
2023-03-10 12:09:48 -08:00
HJfod
5c9ee08922 fix file open dialog default path not having a way to specify filename 2023-02-26 20:37:13 +02:00
altalk23
688b8c4ac9 compile only a singe objcpp file 2023-02-09 13:25:23 +03:00
altalk23
d31d95d6bf somewhat improve objc compile times 2023-02-08 17:43:31 +03:00
altalk23
4f259c6e3a forward filesystem 2023-02-08 16:42:34 +03:00
altalk23
51990ad89b make ModInfo pimpl 2023-01-31 16:44:28 +03:00
matcool
deab672bc2 json rewrite, use custom lib instead of nlohmann::json
This is in attempt to make compile times better, as the old json library
was quite slow to compile due to many template instantiations and such a
large header.

macOS tests have shown build times from 610s to ~390s, about a 1.5x
speedup

Co-authored-by: camila314 <47485054+camila314@users.noreply.github.com>
2023-01-27 21:14:26 -03:00
altalk23
a90b3e18dd remove meta and hook-core remnants 2023-01-24 18:03:52 +03:00
HJfod
6e426babdd fix userTriedToLoadDLLs return value 2023-01-24 10:45:18 +02:00
HJfod
57fd2c25c2 fix Loader::userTriedToLoadDLLs definition on mac & ios 2023-01-24 10:37:02 +02:00
HJfod
0012762c84 check if the user has loaded dlls and show a warning if so 2023-01-24 10:28:43 +02:00
altalk23
b97bb0cc98 Merge branch 'main' into tulip-hook 2023-01-06 22:09:53 +03:00
altalk23
ac238e54da fix crashlog 2023-01-06 20:25:53 +03:00
altalk23
07e64c4dc9 remove cursed this->m_ 2022-12-31 18:20:43 +03:00
altalk23
1bdc8f408c Update TulipHook and fix some really minor stuff 2022-12-14 17:17:52 +03:00
altalk23
5efee1e42f do a funny by reverting the internal naming back to impl 2022-12-14 14:50:46 +03:00
altalk23
5666c8f356 separate mod and impl 2022-12-14 14:11:19 +03:00
matcool
2c3520f454 Add CPM.cmake, use it for external libraries
this removes submodules and external libraries in the code in favor of
importing them as CPM packages. CPM_SOURCE_CACHE is recommended as
codegen has to readd two of the same dependencies
2022-12-12 18:20:24 -03:00
camila314
550e87377d optimize util slightly 2022-12-12 14:06:04 -06:00
camila314
98bae53959 LevelSettingsLayer string ids 2022-12-12 13:32:44 -06:00
altalk23
a449225d60 Merge branch 'altalk' 2022-12-12 14:09:16 +03:00
altalk23
3a31efe113 implement pimpl for loader 2022-12-10 19:30:14 +03:00
HJfod
286bdb2bc6 standardization
- remove m_ prefix from structs
 - make IPC event members public
 - make IPC event reply as json
2022-12-09 21:29:21 +02:00
HJfod
996acf15aa Merge branch 'main' of https://github.com/geode-sdk/geode into main 2022-12-07 12:37:10 +02:00
HJfod
08934132d8 Merge branch 'main' of https://github.com/geode-sdk/geode into main 2022-12-04 18:41:14 +02:00
altalk23
20a2dc9f07 fix events and cleanup 2022-12-04 19:39:40 +03:00
altalk23
0803f83355 completely replace result impl - TODO: fix unzip 2022-12-02 18:40:51 +03:00
HJfod
a8cc48f35a Merge branch 'main' of https://github.com/geode-sdk/geode into main 2022-12-01 22:43:11 +02:00
camila314
655154518a windows fix v2 2022-11-30 11:35:17 -06:00
HJfod
f73d1042a3 move directories away from loader into new dirs namespace 2022-11-30 19:19:00 +02:00
camila314
25d4f2e5c0 windows fix 2022-11-30 11:05:14 -06:00
camila314
130e3fb834 ipc is good now 2022-11-30 10:51:38 -06:00
HJfod
8126175eaa remove geodeRoot 2022-11-30 18:37:15 +02:00
HJfod
1807f19b51 fix build
- no warning on m_icon = icon in Notification
 - fix mac InternalLoader.cpp using Loader::get()->getLogs instead of log::Logs::list()
2022-11-30 17:46:00 +02:00
HJfod
368da1009d fix mac build 2022-11-30 17:14:50 +02:00
HJfod
f18353c2af cleanup
- rewrote Loader to have a public loading API
 - moved logging away from Loader
 - moved texture path handling away from Loader into CCFileUtils, added new functions there for that
 - bumped version to v0.7.0
 - moved ModInfo to its own header
 - added early loading support through mod.json instead of loader stuff
 - wrote a custom Unzip implementation (essentially same as ZipUtils except with a much more simple and clean API)
 - renamed `src/load` to `src/loader`
 - other stuff i prolly forgor
2022-11-30 00:48:06 +02:00
HJfod
b222879681 fix macos build 2022-11-28 21:08:21 +02:00
HJfod
02efe58724 more GGCP
- move Core sources to platform folder
 - make sure source files on Mac include DefaultInclude
 - make sure sources are added in cmake
2022-11-28 20:03:30 +02:00
HJfod
72bbffa79d Great Geode cleanup project
- move all platform sources to one central folder under src/platform/name
 - don't add obj-c sources on windows or platform files from other platforms on all platforms
2022-11-28 19:45:23 +02:00