[REQ] Vampire: The Masquerade - Coteries of New York

Ask about cheats/tables for single player games here
Post Reply
Acleacius
Novice Cheater
Novice Cheater
Posts: 24
Joined: Mon May 29, 2017 7:18 pm
Reputation: 2

[REQ] Vampire: The Masquerade - Coteries of New York

Post by Acleacius »

Thanks to all who have made and helped with Tables over the years! :wub:

If there is currently a Table or Trainer a link would be greatly appreciated.

Game Name: Vampire: The Masquerade - Coteries of New York

Game Engine: Unity

Game Version: v1.0.04 current at this posting.

Options Required: Blood Quantity lock and Night Time Usage Freeze (lack of a better name?).

Game/Steam Website:
[Link]
[Link]
[Link]

Other Info: This is a Visual Novel in the VtM universe. It would be nice to Freeze the Blood usage, which is an indicator of Health/Temperament. I.e. if you get damaged or use Disciplines/Spells the corners of the screen become bloody. Casting 1 Discipline would probably cause 1 corner to become bloody. While receiving an extremely damaging hit could cause three corners to become bloody.
The Night Time Usage Freeze would be helpful to completing more quests each night. Usually you can complete 1 to 2 quest each night before your forced to hit REST. If the night could be frozen then each quest could be completed, each night. It averages anywhere from 2 to 8 possible quest each night. So since the game is just the first chapter and ends after about 18 days there's no time to finish them all, not even close.

P.S. Sorry about my first attempt to post about this potential Table/Trainer, I didn't realize there was a Template. Please let me know if this is incorrect.

User avatar
Shizuma
Expert Cheater
Expert Cheater
Posts: 55
Joined: Thu Jun 08, 2017 7:55 am
Reputation: 44

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Shizuma »

Hello Acleacius,
I have try to do something but the game are running with Unity engine, and this is beyond my poor capacity.

When i think to find a pointer, or a code part usable, all vanish on restart game :/
So i dont stop to try, but that will be complecated...

Just a tips for dont despear you can edit you save game who are located on:
> C:\Users\*your user name*\AppData\LocalLow\DrawDistance\VtM Coteries of New York\Saves
Appdata is a hidden file copy past if you have difficult to find it, create a new shortcut and copy the next target on it:
> %UserProfile%\AppData\LocalLow\DrawDistance\VtM Coteries of New York\Saves

Here you have folders named 0,1 and 2 all correspond to your save slots.
On is files you have 4 documents only 2 of it contain interesting data, you can open it and edit it with notepad or an editor like notepad++.

In "Variables.save" the interesting values are:
"PlayerHunger" 0 you are full of blood, more high is the value more you risk to lose controle and release the beast.
"PlayerHumanity" i dont really have occasion to incrase this if you have return
"Masquerade" seem to be how many time you break the mascarade.
"CurrentNight" not sure. (the night where you are is set on the state.save file)

In "State.save" the interesting values are:
"night" set the night you are
"avaibleQuests" see to be the number of action you can do.

In those documents you have many others values.

I hope that can help you a little ^^,

Acleacius
Novice Cheater
Novice Cheater
Posts: 24
Joined: Mon May 29, 2017 7:18 pm
Reputation: 2

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Acleacius »

Thanks for the reply, Shizuma! :)

Yes, I did find those and editing the save games was my solution too. I made 10 quicksave folders 1-10, then at key points (mostly at the mission select screen) I dropped out and copy the current save. Afaik, there is only 1 save per character. So if you had 4 saves, most likely started 4 different toons.

The two files that need to be edited depending on what your changing (mostly "available quests" for myself) is State.save and Variables.save . I was using Notepad ++ in case future players do a search and want a free reader choice.

Setting the Night is important because there are far too many side-quests to be able to complete in one play through at current time of 16 days before end-game. Actually you can avoid changing "night" as long as you don't press the "REST" button.

So basically "avaibleQuests" 0, 1 or 2 are the possible settings. If you want to see and complete all the quests for each character you, it's important save after each quest on the Mission Select Screen. Exiting to Main Screen, then resetting the "avaibleQuests" to 1 or 2 depending on how many you have left. Then you just reload, you should be back at the Mission Select Screen with ability to do more quests. Each night I completed every possible quest stage, allowing me to complete all missions in a single game.

Humanity declines if you kill an innocent.

Hunger can be from using too many Disciplines/Spells without Feeding OR from taking Damage in a fight.

Masquerade is exposing your Vampiric nature in front of Cameras or Humans, causing the 2nd Inquisition to come after you, afaik.

User avatar
Shizuma
Expert Cheater
Expert Cheater
Posts: 55
Joined: Thu Jun 08, 2017 7:55 am
Reputation: 44

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Shizuma »

Hello Acacius,

Thanks for your explanations :)

I prupose you an "experimentale" table:
Activate No action decay block the "avaibleQuests" counter.
:arrow: Factualy decreasing mecanism are just bypassed

And a counter who are updated once you finish a quest :/

Fast test have good result hope it work for you to.
Attachments
VtM Coteries of New York v0.1.CT
(2.93 KiB) Downloaded 119 times

Acleacius
Novice Cheater
Novice Cheater
Posts: 24
Joined: Mon May 29, 2017 7:18 pm
Reputation: 2

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Acleacius »

Thanks for the table Shizuma! 8-)

Downloading and will try it asap.

User avatar
VampTY
Table Makers
Table Makers
Posts: 312
Joined: Tue Mar 05, 2019 10:52 am
Reputation: 280

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by VampTY »

Hello, since it's a mono game, in some empty script just add:

Code: Select all

[ENABLE]
{$Lua}
LaunchMonoDataCollector()
{$Asm}
[DISABLE]

You can name the script whatever you want, now let's say for the sake of this example the name is ON, now attach your script(s) in that ON, just drag them into ON, then right click ON and Group config and Hide children when deactivated

PS 1: you can also add this code below in each script(s) without the need to make that ON, meaning, after [ENABLE], in your script just add:

Code: Select all

{$Lua}
LaunchMonoDataCollector()
{$Asm}
PS 2:
If you want to add also the .exe's name , in that ON script, you can add it where you see that NAME:

Code: Select all

[ENABLE]
{$lua}
OpenProcess("NAME.exe")
mono_initialize()
LaunchMonoDataCollector()
{$asm}
[DISABLE]

MORE INFO:
- on unity having green addresses/pointers that don't require scripts, these won't require having mono enabled in no script, those will work all the time (even after you''ll reset/shutdown your game etc)
- on unity some scripts, as base with pointers require having that script added in order to activate mono, then to activate them
- on unity using a special script that injects a pointer values doesn't require activating mono with that script
- on unity, mono can be activated through CE as well

PS 3: if you desire, i can paste you an example of one of my easy scripts, that injects stuff, doesn't require mono to be enabled or any script, this script will be activated if you want to add a pointer to it, only the script itself is needed, it will autogenerate the pointer when it's enabled, with the values added inside..let me know if you want me to paste it here , but just so you'll know, i'm not great at explaining things, is either you'll understand it or not! :P

Well i hope it helped you on unity games!

Your girl,
V.

Acleacius
Novice Cheater
Novice Cheater
Posts: 24
Joined: Mon May 29, 2017 7:18 pm
Reputation: 2

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Acleacius »

Shizuma, reporting back it works setting "available quests" , thanks! 8-)
The only downside is it caused a lockup, when exiting while still activated. It wasn't a hardlock needing a reboot, just gamelock requiring a manual closure.


VampTY, thanks for all that info. A lot of it is above my paygrade atm! Of course I would like to try a table for this game if you have one. 8-)

User avatar
Shizuma
Expert Cheater
Expert Cheater
Posts: 55
Joined: Thu Jun 08, 2017 7:55 am
Reputation: 44

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Shizuma »

@Acleacius thanks for your repport i will try to reproduce and solvit soon has i can ^^

@VampTY thanks for sharing your knowledge! i very appreciate that :)

i already use this on my script :)

Code: Select all

 {$Lua}
LaunchMonoDataCollector()
{$Asm} 
I will try soon has i can to use in addition:

Code: Select all

OpenProcess("NAME.exe")
mono_initialize()
Pointers are 'working' with unity engine?
I always think he was changing because of code generation, or something like that, and because all my pointerscan results are good to bin after a game restart :/

For your proposition in PS3 You read on my mind i will be glad to read your scripts.
The better to understand how stuff works is to read-it and experiment :)
Dont worry teaching i know that not a easy thing. ^^

User avatar
VampTY
Table Makers
Table Makers
Posts: 312
Joined: Tue Mar 05, 2019 10:52 am
Reputation: 280

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by VampTY »

Here it is, i'm bad at explaining, i hope you can understand all this, there's multiple ways to do this and more advanced with values, buttons and whatnot, but here's the easier way, that works in whatever game:


Example table:

Code: Select all

[ENABLE]
globalalloc(...,1000)
createthread(...)
label(..._ptr_end)
label(..._ptr)
registersymbol(..._ptr_end)
registersymbol(..._ptr)
[[""+...]+...]+...:
..._ptr:
...:
mov [..._ptr],...
cmp [..._ptr_end] 0
ret
..._ptr_end:
dd 1
[DISABLE]
..._ptr_end:
dd 0
unregistersymbol(..._ptr_end)
unregistersymbol(..._ptr)

My pointer used with this example table is this below:
Image

This has 4 offsets, meaning 40,40,54,F80, so regarding this example below:
[[""+...]+...]+...:
The result will be like this below:
[[[[""+...]+...]+...]+...]+...:
Meaning 4 [[[[ added to the left and 3 ]]] to right, the 4th to right, you don't have to add another ], so if you'd have let's say 6 offsets, will be like:
[[[[[[""+...]+...]+...]+...]+...]+...]+...:

Now back to my example, i've added 4 [[[[ to left and 3 ]]] to right:

Step 1:Add "fmodex.dll"+0005AE9C in the first three ... from left
[[[[""+"fmodex.dll"+0005AE9C]+...]+...]+...]+...:
Step 2:Now add the first offset, that is 40, like this:
[[[[""+"fmodex.dll"+0005AE9C]+40]+...]+...]+...:
Step 3:Now add the second offset, that is 40, like this:
[[[[""+"fmodex.dll"+0005AE9C]+40]+40]+...]+...:
Step 4:Now add the third offset, that is 54, like this:
[[[[""+"fmodex.dll"+0005AE9C]+40]+40]+54]+...:
Step 5:Now add the fourth offset, that is F80, like this:
[[[[""+"fmodex.dll"+0005AE9C]+40]+40]+54]+F80:

Now in the script, on :
mov [..._ptr],...
Add the value, let's say 9999, will be:
mov [..._ptr],9999

If you have some integer or float or simple, just add:
mov [..._ptr],270F (270F=9999 in hex)
mov [..._ptr],9999
mov [..._ptr],(int)9999
mov [..._ptr],(float)9999


In my case it's on float.



Now replace the rest of all those ... with a name, in this example these offsets are for health, we'll rename all ... with HP, so having added all from up, the result will be like:

Code: Select all

[ENABLE]
globalalloc(HP,1000)
createthread(HP)
label(HP_ptr_end)
label(HP_ptr)
registersymbol(HP_ptr_end)
registersymbol(HP_ptr)
[[[[""+"fmodex.dll"+0005AE9C]+40]+40]+54]+F80:
HP_ptr:
HP:
mov [HP_ptr],(float)9999
cmp [HP_ptr_end] 0
ret
HP_ptr_end:
dd 1
[DISABLE]
HP_ptr_end:
dd 0
unregistersymbol(HP_ptr_end)
unregistersymbol(HP_ptr)
Alternate to
cmp [..._ptr_end] 0
is
push #100
call sleep



Now this result we'll paste in a script and we'll assign it to the table and then activate it, in my example the health by default is 200 on float, then:

STEP A

- while the script is activated, on Add address Manually, in CE, press it, on address you add HP_ptr, from registersymbol(HP_ptr), i mean the name is HP_ptr, then on type select float, in this example is float (if on you is on 4 bytes or 2 bytes, you select those instead), then press OK, and you'll see something appear, then drag that into the script.
The result is this below:

Image

STEP B

- now with that script enabled, the second step is getting back to that Add address Manually and add also the return, meaning from registersymbol(HP_ptr_end), just add HP_ptr_end and select it as 4 bytes, it will auto-add 1.

So this last HP_ptr_end is to be able to disable after injection, meaning if the script is not enabled this will be 0, if will be enabled, will be 1.

Image

So at the end you either keep only the script, there's no need no need for hp_ptr and hp_ptr_end..or keep them all, your choice!

This is the final result below, only that selected is needed, the others (hp_ptr ..add the value manually or if you'll freeze it will block it) + (hp_ptr_end well will deactivate it)..well, you get it!

Image

So, that's it..practice and practice and you'll make it!Also in unity when you activate mono, that's injection, there's no deactivation, in other game is...you can activate/deactivate with pointers or like this with this script, you can have multiple scripts having multiple ways, you know!

I don't know now, i've tried to write in easy terms so you can understand, i don't know how to say it other way!

User avatar
cfemen
RCE Fanatics
RCE Fanatics
Posts: 686
Joined: Fri Feb 15, 2019 5:45 pm
Reputation: 625

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by cfemen »

Shizuma wrote:
Thu Jan 23, 2020 11:27 am

Pointers are 'working' with unity engine?
Heyo

well,
you can find pointers that works with unity, but if the pointers are not working after a game restart then its not the fault of Unity, this can happen at any engine, it depends how the variable is stored^^

i almost never use pointer scanning, its boring xD

//
Acleacius wrote:
Wed Jan 22, 2020 11:55 pm
The only downside is it caused a lockup, when exiting while still activated. It wasn't a hardlock needing a reboot, just gamelock requiring a manual closure.
close cheat engine first before you close the game, that's a sideeffect of mono Inject.

//

this game has too much text :cry: (yeah i know its visual novel, so its kinda obvious )

so just quick my obversations:

this game is using lua for storing/reading all the variables -> pointer scan is almost impossible

as example hunger:
lua stores hunger as object and returns a int of the value for the games dialogue system.

first thing i did:

Image

unlocking all the levels :D

then i did something for hunger:

i set Hunger to a low value (1)
and the tutorial gaves me all the blocked options:
Image
Image

so just a small table with 2 options:

Enable Level Menu
-activate in the main menu before you load a savegame, and you can choose any level while the "Rest Menu" is open

Set Hunger To XXX
-while script is activ the game will read the XXX value
-default 5 (thats the value you start with at the tutorial)

well thats it :)
Attachments
VtM Coteries of New York.CT
Debug Level Menu + Hunger
(85.39 KiB) Downloaded 175 times

Acleacius
Novice Cheater
Novice Cheater
Posts: 24
Joined: Mon May 29, 2017 7:18 pm
Reputation: 2

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Acleacius »

Thanks Shizuma it's working great, I'll just make sure to exit CE first! :)

Thanks VampTY this is way over my experience and paygrade, your doing a great job of explaining! 8-)

Thanks cfemen, looking forward to trying your table! 8-)
Yes, I'll exit CE table before exiting. I didn't realize what a "mono game" meant, when you and VampTY mentioned it.

User avatar
Shizuma
Expert Cheater
Expert Cheater
Posts: 55
Joined: Thu Jun 08, 2017 7:55 am
Reputation: 44

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Shizuma »

VampTY wrote:
Thu Jan 23, 2020 3:43 pm
I don't know now, i've tried to write in easy terms so you can understand, i don't know how to say it other way!
Dont worry you do it great ^^
For the pointer finding a use the pointerscan fonction (until my computer limits make CE crash :mrgreen: )
For the rest i go training, reading doc about

Code: Select all

"createthread(...)"
and try to use the inclusion of pointers and succession of "... :" ".. :" like you explain in

Code: Select all

[[""+...]+...]+...:
..._ptr:
...:
and take a copy of your post, thanks again :)


@cfemen : Nice job, total respect :)

Luvsic
What is cheating?
What is cheating?
Posts: 4
Joined: Tue Mar 14, 2017 1:59 am
Reputation: 1

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Luvsic »

Shizuma wrote:
Wed Jan 22, 2020 4:44 pm
Hello Acacius,

Thanks for your explanations :)

I prupose you an "experimentale" table:
Activate No action decay block the "avaibleQuests" counter.
:arrow: Factualy decreasing mecanism are just bypassed

And a counter who are updated once you finish a quest :/

Fast test have good result hope it work for you to.
That helped a lot during my playthrough.
Would be nice if you could do the same save data info collecting for sequel "Shadows of New York" :D

Acleacius
Novice Cheater
Novice Cheater
Posts: 24
Joined: Mon May 29, 2017 7:18 pm
Reputation: 2

Re: [REQ] Vampire: The Masquerade - Coteries of New York

Post by Acleacius »

Luvsic, someone posted a request for Shadows of New York below, which I hope for too.
Until then we should be able to do the manual editing of the save files mentioned at the start of this thread. ;)

viewtopic.php?t=13693


Edit: They encrypted the save files this time, so will have to wait on a table or trainer. :(

Post Reply

Who is online

Users browsing this forum: blackrobinhood, Google Adsense [Bot]