cleolibrary / cleo4 Goto Github PK
View Code? Open in Web Editor NEWCLEO 4 for GTA San Andreas
Home Page: https://cleo.li
License: MIT License
CLEO 4 for GTA San Andreas
Home Page: https://cleo.li
License: MIT License
Ошибка Опкод не обрабытывает потоки мейна.
When doing a new game or load game into a slot which doesn't have a cleo_save, the shared variables persist their old value.
Not sure if this is the intended behavior, but doesn't seem like it should be.
after installing cleo 4.4 on gta sa folder my gta keeps on crashing what should I do?
here's the cleo.log file from gta sa directory
03/01/2021 18:51:59.755 Log started.
03/01/2021 18:51:59.755 Unprotecting memory region '.text': 0x00001000 (size: 0x00457000)
03/01/2021 18:51:59.755 Unprotecting memory region '.rdata': 0x00459000 (size: 0x0004C000)
03/01/2021 18:51:59.755 Unprotecting memory region '.text': 0x008B3000 (size: 0x00528000)
03/01/2021 18:51:59.755 Unloading plugins...
03/01/2021 18:51:59.755 Loading plugin cleo/FileSystemOperations.cleo
03/01/2021 18:51:59.802 Loading plugin cleo/IniFiles.cleo
03/01/2021 18:51:59.802 Loading plugin cleo/IntOperations.cleo
03/01/2021 18:51:59.833 Started on game of version: SA 1.01 eu
03/01/2021 18:51:59.833 Injecting MenuStatusNotifier...
03/01/2021 18:51:59.833 Replacing call: 0x0057BF71
03/01/2021 18:51:59.833 Injecting DmaFix...
03/01/2021 18:51:59.833 Replacing call: 0x0053EE21
03/01/2021 18:51:59.833 Injecting TextManager...
03/01/2021 18:51:59.833 Injecting function at: 0x006A0870
03/01/2021 18:51:59.833 Injecting SoundSystem...
03/01/2021 18:51:59.833 Replacing call: 0x0074907C
03/01/2021 18:51:59.833 Injecting CustomOpcodeSystem...
03/01/2021 18:51:59.833 Injecting ScriptEngine...
03/01/2021 18:51:59.833 Replacing call: 0x0046AE9B
03/01/2021 18:51:59.833 Replacing call: 0x0058DD22
03/01/2021 18:51:59.833 Replacing call: 0x005904B4
03/01/2021 18:51:59.833 Replacing call: 0x005D57B7
03/01/2021 18:51:59.833 Injecting function at: 0x005DEEA0
03/01/2021 18:51:59.833 Replacing call: 0x005D20D0
03/01/2021 18:51:59.833 Replacing call: 0x005D157C
03/01/2021 18:51:59.833 Injecting function at: 0x0046685B
03/01/2021 18:52:00.317 Creating main window...
03/01/2021 18:52:00.317 Found sound device 0: No sound
03/01/2021 18:52:00.317 Found sound device 1 (default): Speakers (Realtek High Definition Audio)
03/01/2021 18:52:00.317 Found sound device 2: Realtek Digital Output (Realtek High Definition Audio)
03/01/2021 18:52:00.317 Found sound device 3: LCD (NVIDIA High Definition Audio)
03/01/2021 18:52:00.317 On system found 4 devices, 4 enabled devices, assuming device to use: 1 (Speakers (Realtek High Definition Audio))
03/01/2021 18:52:00.349 SoundSystem initialized
03/01/2021 18:52:00.352 Floating-point audio supported!
03/01/2021 18:52:00.353 Audio hardware acceleration disabled (no EAX)
03/01/2021 18:52:40.201 Closing SoundSystem...
03/01/2021 18:52:40.201 Freeing BASS library
03/01/2021 18:52:40.202 SoundSystem closed!
03/01/2021 18:52:40.202 Deleting fxts...
03/01/2021 18:52:40.202 Unloading scripts...
03/01/2021 18:52:40.202 Log finished.
Certain types of plugins (an debugger, an custom-header, etc) needs to store additional data for scripts. There are several ways to do so without the help of CLEO, but that would be too much duplication of work if CLEO could help on its own.
Indeed, even CLEOs own custom data could be stored as a custom data object instead of a derived class!
I've begin some work on this feature on a branch, it's utter clap, especially the data structure I'm on, but well, that's just a mvp.
The front idea is to replicate how RenderWare does plugin data, by registering information at startup and allocating the data together the struct. Taking one of the padding words in CRunningScript
and use as an index to the data pool would be ideal, as the access time would be quick
The padding words after the gosub array could work, but do note how they are used by III.VC.CLEO as an is_custom
flag. The word that is currently used to store the scm_function_index
would be better, doubt anybody has ever touched those from outside CLEO.
Proofing that it works could be by implementing custom-headers+commands-oat as a data plugin in CLEO.asi
itself.
Additionally, an debug server (currently WIP in a private repository of mine) would make it even more proofed.
Dear CLEO people,
we want you to include audio stream and SFX replacement method a la Modloader,
in CLEO 5.0.
I am using Cleo4 , installed it multiple times the problem still persists can't play the game. I am playing GTA SA 1.0.1 its not the rockstar official but it is installed from MJ repacks.
help me to fix it
If a script creates a new entity in game (a parking lot, a marker, whatever to be stored in the savegame), and the player saves, then loads the save, the entity is recreated again, as the script is running. The only thing to avoid that is to use enable_thread_saving opcode. But if it's missed the mess happens. Need to find the way to not duplicate entities again and again.
This is an update of the previos thread,
Just as said CLEO 4.4 crashes with the script "Fair Police (Junior_Djjr).cs"
which as it's name states:
allows you to have a fair police around the game. So why this is happening? and how can devs fix Cleo?
THIS DOES NOT HAPPEN ON CLEO 4
As you can see in the screenshot. The CLEO text is stretched out. I use wshps.asi to fix Widescreen issues. For 32:9 Monitors, that stretched out CLEO text looks very odd.
Every time I download its a WinRar Zip file with no exe files or setups????????????????????
I'm trying to create a script, but would be helpful if I can check the documentation of this library, thank you
GET_TEXT_LABEL_STRING (0ADE) calls the CLEO.asi:CText__locale function (CText::Get as per R* namings), this causes any other gxt hook (such as Mod Loader's one) to be ignored. Please call gta_sa.exe:CText::Get!
0AEA GET_PED_REF
is crashing. 4.3.24 is fine.
Unhandled exception at 0x71037882 in CLEO.asi (+0x7882): 0xC0000005: Access violation reading location 0xF7F50BC5.
I can try to debug and fix it but I need to update by VS and build tools before it.
Originally posted by @JuniorDjjr in #26 (comment)
When i had windows 7, i wanted to mod gta san so i installed Cleo, went to cleo.li but then i got viruses everywhere and my Appdata folders are also infected by the virus.
Skip this, I see that the only way to use those effects in CLEO is through OpenAL, using the OpenAL Host I can even activate EAX in many games and apps even with generic sound cards, but as I mentioned before, only with OpenAL, with BASS, even if my card supports the EAX 4.0 extension, the Bass library does not recognize it... (Ok, I think that on my system the BASS library is the only one that does not recognize hardware accelerated effects, not even emulated ones 😕)
It would be great to replace the sound subsystem with OpenAL, so you would get a good sound on any machine but I think I am dreaming of an impossible 😅
Anyway, thanks for reading the post 😉
Note: Excuse my English, but I speak Spanish ✌
Cheers! ;D
hi there! can you please help me to fix the game crash after 5-10 minutres? heres the log
cleo.log
:
When I have any cleo scripts installed, the game will eventually crash when using the game's user track player radio station (switching to the station, entering a vehicle or going to the next song).
I found the best way to test this is to spam the user track skip button, it will eventually crash the game. I also found it crashes sooner if mod loader is installed.
Here's the crash log for when modloader is installed. My cleo log doesn't come up with anything.
Game version: GTA SA 1.0 US
Unhandled exception at 0x777EE925 in ntdll.dll (+0x3e925): 0xC0000005: Access violation writing location 0x00000024.
Register dump:
EAX: 0x00000024 EBX: 0x17785428 ECX: 0x00000020 EDX: 0x00211000
EDI: 0x00B6B970 ESI: 0x00000048 EBP: 0x12ABFE80 EIP: 0x777EE925
ESP: 0x12ABFE80 EFL: 0x00010202 CS: 0x00000023 SS: 0x0000002B
GS: 0x0000002B FS: 0x00000053 ES: 0x0000002B DS: 0x0000002B
Stack dump:
0x12ABFE80: 12ABFEBC 00823FD0 00000020 00823763 00000000 00B6B970
0x12ABFE98: 00000048 17785428 12ABFE90 12ABFE94 12ABF844 12ABFF10
0x12ABFEB0: 00825EA4 00887F70 FFFFFFFF 00000000 005389A4 00000000
0x12ABFEC8: 00000201 00000000 004F30BB 00000000 00000201 00000000
0x12ABFEE0: 00000058 00000089 00000048 00B6B970 00000006 004F3660
0x12ABFEF8: 00000006 00B606CC 18220FA8 00000006 00000089 00B6B970
0x12ABFF10: 12ABFF50 0083C1C7 FFFFFFFF 004F1404 00000006 00B606CC
0x12ABFF28: 00B60601 0000F6AD 76610F00 01E9AB2E 00000006 00000002
0x12ABFF40: 00000001 00000089 00B60704 0000001B 12ABFFCC 0083C106
0x12ABFF58: FFFFFFFF 004F1619 004F15C0 12ABFF80 004F15C0 00B606CC
base: 0x128C0000 top: 0x12ABFE80 bottom: 0x12AC0000
Backtrace (may be wrong):
=>0x777EE925 RtlEnterCriticalSection+0x15 in ntdll.dll (+0x3e925) (0x12ABFE80)
0x00823FD0 in gta-sa.exe (+0x423fd0) (0x12ABFEBC)
0x005389A4 in gta-sa.exe (+0x1389a4)
Reading and writing memory should happen in isolated and controlled manner and never cause the game to crash. Instead the error should be logged and the script shut down, while letting other scripts continue working.
Hello everyone. I have a script that makes the plane fly to all 3 cities of the state. But the problem is they twitch. Or they ram into buildings. But I have to solve the jerking of the plane. can anyone help me please? here the script: ```
// This file was decompiled using SASCM.ini published on 2020-11-11
{$CLEO .cs}
0000: NOP
:NONAME_2
wait 0
077E: get_active_interior_to $ACTIVE_INTERIOR
if or
not $ACTIVE_INTERIOR == 0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 877.9877 -28.3817 63.1953 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2025.451 997.5287 10.8203 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -694.6745 956.7463 12.2547 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2025.717 157.9236 29.0391 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2037.857 -2525.165 30.625 radius 60.0 60.0 60.0
jf @NONAME_228
jump @NONAME_2
jump @NONAME_551
:NONAME_228
4@ = 1374.069
5@ = -1889.234
6@ = 612.8045
7@ = -1295.609
if and
0154: actor $PLAYER_ACTOR in_zone 'LA'
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
jf @NONAME_338
Model.Load(593)
038B: load_requested_models
jump @NONAME_551
jump @NONAME_551
:NONAME_338
4@ = -2697.084
5@ = 374.9268
6@ = -2114.359
7@ = 1189.876
if and
0154: actor $PLAYER_ACTOR in_zone 'SF'
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
jf @NONAME_448
Model.Load(593)
038B: load_requested_models
jump @NONAME_551
jump @NONAME_551
:NONAME_448
4@ = 1574.103
5@ = 2159.21
6@ = 2486.055
7@ = 1407.873
if and
0154: actor $PLAYER_ACTOR in_zone 'VE'
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
jf @NONAME_2
Model.Load(593)
038B: load_requested_models
jump @NONAME_551
:NONAME_551
wait 0
if and
Model.Available(593)
0208: 0@ = random_float_in_ranges 4@ 6@
0208: 1@ = random_float_in_ranges 5@ 7@
02CE: 2@ = ground_z_at 0@ 1@ 1000.0
2@ += 100.0
0208: 3@ = random_float_in_ranges 0.0 360.0
Car.Create(8@, 593, 0@, 1@, 2@)
Car.Angle(8@) = 3@
Car.LockInCurrentPosition(8@, True)
Marker.CreateAboveCar(14@, 8@)
Object.Init(12@, 593, 0.0, 0.0, 0.0)
Object.Angle(12@) = 3@
0681: attach_object 12@ to_car 8@ with_offset 0.0 0.0 0.0 rotation 0.0 0.0 0.0
Model.Destroy(593)
0560: create_random_actor_in_car 8@ handle_as 10@
Actor.SetImmunities(10@, True, True, True, True, True)
0209: 13@ = random_int_in_ranges 0 4
if
13@ == 1
jf @NONAME_882
13@ = Audiostream.Load3D("CLEO\SOUND\VC_DODO1.WAV")
Audiostream.PerformAction(13@, AudioStreamState.Play)
Audiostream.Volume(13@) = 4.0
Audiostream.Loop(13@, 1)
Audiostream.LinkToCar(13@, 8@)
02D4: car 8@ turn_off_engine
jump @NONAME_967
:NONAME_882
if
13@ == 2
jf @NONAME_967
13@ = Audiostream.Load3D("CLEO\SOUND\VC_DODO2.WAV")
Audiostream.PerformAction(13@, AudioStreamState.Play)
Audiostream.Volume(13@) = 4.0
Audiostream.Loop(13@, 1)
Audiostream.LinkToCar(13@, 8@)
02D4: car 8@ turn_off_engine
:NONAME_967
jump @NONAME_974
:NONAME_974
wait 0
0208: 3@ = random_float_in_ranges -0.1 0.1
if or
-0.05 > 3@
3@ > 0.05
jf @NONAME_974
jump @NONAME_1109
:NONAME_1031
wait 0
0407: store_coords_to 0@ 1@ TIMERA from_car 8@ with_offset 0.0 0.5 0.0
Car.PutAt(8@, 0@, 1@, 2@)
9@ = Car.Angle(8@)
005B: 9@ += 3@ // (float)
Car.Angle(8@) = 9@
jump @NONAME_1109
:NONAME_1109
wait 0
if and
8495: not car 8@ burning
not Car.Wrecked(8@)
jf @NONAME_1430
if or
0202: actor $PLAYER_ACTOR near_car 8@ radius 400.0 400.0 sphere 0
00A3: actor $PLAYER_ACTOR sphere 0 in_rectangle_cornerA 4@ 5@ cornerB 6@ 7@
jf @NONAME_1399
077E: get_active_interior_to $ACTIVE_INTERIOR
if or
not $ACTIVE_INTERIOR == 0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 877.9877 -28.3817 63.1953 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2025.451 997.5287 10.8203 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -694.6745 956.7463 12.2547 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2025.717 157.9236 29.0391 radius 60.0 60.0 60.0
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere -2037.857 -2525.165 30.625 radius 60.0 60.0 60.0
jf @NONAME_1031
jump @NONAME_1399
:NONAME_1399
wait 0
Audiostream.Release(13@)
Object.Destroy(12@)
Actor.RemoveReferences(10@)
Car.RemoveReferences(8@)
jump @NONAME_2
:NONAME_1430
wait 0
Car.LockInCurrentPosition(8@, False)
jump @NONAME_1448
:NONAME_1448
wait 0
11@ = Player.WantedLevel($PLAYER_CHAR)
if
not 11@ >= 2
jf @NONAME_1399
11@ += 1
Player.WantedLevel($PLAYER_CHAR) = 11@
jump @NONAME_1448
The following entity creation opcodes may need a NOSAVE variant, since custom scripts tend to accidentally store them in save games:
The original commands could redirect to those commands by default for custom scripts, but I don't really know if this is a very backward compatible idea.
This is a possible solution for #3
Hi. Will you be adding in the future to scan new script plugins etc in the game? Allegedly, you put a new script, press this button called "scan scripts" and the script started working? It's like adding new music, in GTA and in settings you press to scan new music.
Hi, I'm using the Rockstar Games Launcher version of GTA SA. I replaced the .exe file with the v1.0 US version of course. I use many mods, they're working just fine. But the MP3 player plugin that is on the https://cleo.li/download.html site crashes my game.
Here's the error code on the modloader.log:
Game version: GTA SA 1.0 US
Unhandled exception at 0x0002C701 in gta_sa.exe: 0xC0000005: Access violation reading location 0x0002C701.
Register dump:
EAX: 0x00000053 EBX: 0x00000001 ECX: 0x03F05AC4 EDX: 0x018E7BEC
EDI: 0x00000000 ESI: 0x03F05AC4 EBP: 0x0177F5BC EIP: 0x0002C701
ESP: 0x0177F5A4 EFL: 0x00210206 CS: 0x00000023 SS: 0x0000002B
GS: 0x0000002B FS: 0x00000053 ES: 0x0000002B DS: 0x0000002B
Stack dump:
0x0177F5A4: 00469FF7 00000ADF 00000000 00000000 018E6BF4 03F05AC4
0x0177F5BC: 0177F5C8 018E6BFF 03F00ABC 0177F648 018E6C1B 0046A233
0x0177F5D4: 0177F668 00863B10 0177F648 00000000 00000002 00863B10
0x0177F5EC: 0156561A 00A49960 0053BCCE 0177F668 0053E593 00863B10
0x0177F604: 5CC5F54A 0177F6C0 0A17B2C0 5CCBCDCC 01A6D948 00000000
0x0177F61C: 00000000 002E002E 01BC7878 0177F748 00000060 001A07D0
0x0177F634: 0177F610 0177F610 0177F694 5CCAB6B0 00000001 0177F658
0x0177F64C: 5CC6829F 0A17B2C4 0177F668 0177F6A0 5CC63D05 0177F668
0x0177F664: 0A17B984 5CCB1098 01A6D948 00000058 001A1AE4 00000000
0x0177F67C: 0A17B2B8 001A1AE0 00000000 0177F6A8 00000000 0177F668
base: 0x01580000 top: 0x0177F5A4 bottom: 0x01780000
Backtrace (may be wrong):
=>0x0002C701 in unknown (+0x2c701) (0x0177F5A0)
0x00469FF7 in gta_sa.exe (+0x69ff7) (0x0177F5BC)
0x018E6BFF in cleo.asi (+0x16bff) (0x0177F5C8)
0x018E6C1B in cleo.asi (+0x16c1b) (0x0177F648)
0x5CC6829F in std.data.dll (+0x21829f) (0x0177F658)
0x5CC63D05 in std.data.dll (+0x213d05) (0x0177F6A0)
0x5CC63E93 in std.data.dll (+0x213e93) (0x0177F6B8)
0x5CC5F49C in std.data.dll (+0x20f49c) (0x0177F700)
0x5CC6826F in std.data.dll (+0x21826f) (0x0177F710)
0x5CC63D05 in std.data.dll (+0x213d05) (0x0177F758)
0x5CC694CE in std.data.dll (+0x2194ce) (0x0177F8A0)
0x00748D00 in gta_sa.exe (+0x348d00) (0x0177F938)
0x6B8BFB94 in modloader.asi (+0x1fb94) (0x0177F958)
0x6B8BDE46 in modloader.asi (+0x1de46) (0x0177F988)
0x6B8BB83B in modloader.asi (+0x1b83b) (0x0177F9DC)
0x6B8BFBBB in modloader.asi (+0x1fbbb) (0x0177F9FC)
0x6B8BE202 in modloader.asi (+0x1e202) (0x0177FA2C)
0x6B8C07BB in modloader.asi (+0x207bb) (0x0177FBB8)
0x6B8C0188 in modloader.asi (+0x20188) (0x0177FBD0)
What should I do?
Hey guys, GTA SA (V1.0, the original 1.0 version) crashes when I try to run a new game with CLEO 4(v4.4.0). At first, I thought the problem is caused by the mods, so I removed them. But GTA SA still crashes. To test that it is working without CLEO, I reinstalled the game and run it. It can run a new game and save the game. After installing CLEO 4, it crashes. I tried installing SilentPatch, AntiCrash v0.3.7, but it still didn't work. Please help, thanks.
Add support to build the project using Makefile and GCC/Clang
Please. Just showing 4.3 is not helpful.
This is a bug which exists for quite a long time now. It happens because the WM_ACTIVATE event in the DefWindowProc() hook is not handled properly. WM_ACTIVATE fires whenever a window gains or loses focus, and thus one would need to check the WPARAMS argument and call PauseStreams() and ResumeStreams() accordingly.
Source:
Line 37 in e36ec85
I am using VS 2019 and I have installed plugin-sdk but the compiler keeps complaining about CRGBA and PluginBase.h.
Can you reintroduce the CMakefile? Is there an older version of plugin-sdk I need to use?
for some reason CLEO4 just murders gta sa when its loading and i bassicly just got gta sa
even tho I tried to do evreything it still crashed plz help
I'm trying to automate the speed glitch when driving a NRG500
If I spam the NUMPAD8 while driving then speed gets increased, can't recreate it yet with a script
{$CLEO .cs}
0000: NOP
wait 10000
while true
wait 0
if
00DD: actor $PLAYER_ACTOR driving_car_with_model 522 // NRG-500
then
if
0AB0: key_pressed 87 // W
then
if
00DF: actor $PLAYER_ACTOR driving
then
03C0: 1@ = $PLAYER_ACTOR car
if and
00DF: actor $PLAYER_ACTOR driving
81F3: car 1@ not_in_air
THEN
0AB1: @Set_Virtual_Key 2 KeyOffSet 0x68 state 255
wait 100
0AB1: @Set_Virtual_Key 2 KeyOffSet 0x68 state 0
wait 100
end
end
end
end
end
:Set_Virtual_Key
{
255 = true
0 = false
0AB1: @Set_Virtual_Key 2 KeyOffSet 0x57 state 255
}
2@ = 0xB72CC8
0@ *= 2
005A: 2@ += 0@ // (int)
0A8C: write_memory 2@ size 1 value 1@ virtual_protect 0
0AB2: ret 0
I running it on admistration starting a new game or loading a save and then its crashes
when I open GTA, it loads and I go to start game - load - de savegame. it goes till the loading screen and then crashes.
specs:
Win10 20h2
i5 ice lake
8gb ram
i have gta san and when i install cleo, all my pc browser stop working. they show error and dont work. they dont load any page. even the offline pages like settings page dont work. This happens only due to cleo. I have checked this many times. i have also reinstalled my windows 7 os several times and confirmed that it is cleo that creates the problem.
I can provide more info if you want.
I've figured out that Audio Stream is hardcoded as MONO only, due to flags definition mistake or something?
Here's the call of BASS_Init ( source/CSoundSystem.cpp ):
3rd param (flags) is (BASS_DEVICE_3D | BASS_DEVICE_DEFAULT) which is = 6
but if we look at the Bass docs we'll see that BASS_DEVICE_MONO definition is equal to BASS_DEVICE_DEFAULT
http://www.un4seen.com/doc/#bass/BASS_Init.html
So, "BASS_Init" function takes BASS_DEVICE_MONO in, which causes all audios to play MONO.
My quick dirty solution was to patch bit-flags from "6" to "4".
Just letting you know.
I Installed GTA:SA from Repack having version 1.0.0.22 GTA SA RiP by Christsnatcher
The game runs fine without any mods. Also, Silent’s ASI Loader and SilentPatch runs fine with the game. So, the dll files seem to be compatible with game version.
But CLOE ceases to work with it.
These are the things which I did and my findings:
Last thing is to Install and use US 1.0 version but I dont know if there would be any fixes in that
If possible, kindly point me in correct direction ?
CLEO should offer a safer execution runtime for custom scripts to block malicious code.
There are examples of so-called "stealers" that use network api (wininet) to send user data to third-party servers. To disallow this unwanted behavior CLEO runtime should be responsible for checking script permissions.
One of the concepts here could be seen in the Deno project https://deno.land/manual/getting_started/permissions#permissions-list
where in order to get the access to the network or filesystem operations you must be explicitly granted a right to do so. Yet it's unclear how to control this given we expose very low-level API (LoadLibrary) to the user-land.
Thoughts?
The newest CLEO version, 4.4.0, may cause GTA SA crashes. In my case it happened when I tried to launch one of my MPACKs. The last opcode captured by SCRLog is [0AF0] READ_INT_FROM_INI_FILE
. Deleting the .ini and trying to create a new one from the code leads to the last command being [0AF1] WRITE_INT_TO_INI_FILE 0
. Reinstalling an older version (4.3.22) of CLEO solves the problem. The logs are the following:
Thank you for attention and any help!
As a continuation of #7 we need to replace GTASA dependency in a solution file so the project is buildable.
Might want to include plugin-sdk as a git submodule.
@thelink2012 what do you think?
opcode_0ABA
calls RemoveCustomScript
, which pushes the script to the ScriptsWaitingForDelete
queue, that will cause the script to be deleted later (because of assembly hooks). However, opcode_0ABA
ends up calling delete
for the script pointer by itself!
I have GTA SA v1.0 USA with CLEO 4.0 and many mods installed on it.
I can pass all the game's story without any issue,
When I install cleo 4.4 or 4.4.1 the game just crashes when I shoot a pedestrian in the back, I don't get any error message and the game just crashes and throws me back to my desk
Currently using Windows 7
i closed the case and i though that fixing the cleo library would work but when i download any mod it still crashes can anybody help if no just close this case
idea mentioned there thelink2012/gta3sc#117
needs a design.
I don't now why but new cleo codes crashing my game.
0AC1: $test = load_audio_stream_with_3d_support "cleo\sounds\test.mp3"
(this code works perfectly)
AudioStream3D.Load("cleo\sounds\test.mp3", $test)
(but this is crashing my game)
Line 653 in 07df664
Currently it's bound to VS2010.
What are the pros/cons of having the project updated to VS2015 or VS2017?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.