z Baldur's Gate 3

Upload your cheat tables here (No requests)
R3p$PZq@4TRe0@#P
What is cheating?
What is cheating?
Posts: 1
Joined: Sat Aug 12, 2023 3:29 pm
Reputation: 0

Re: z Baldur's Gate 3

Post by R3p$PZq@4TRe0@#P »

Something is messed up with my save(?) maybe, or it could be a mod but I removed all mods and the problem persisted so I think it might be my save game.

Everyone is capped at level5. It may be due to having used the force levelup on save.

But now no matter what, I'm stuck at level5 unless I manually force levelup on save again with CE.

Anyone ran into this? And/or know a way to fix it? XD

How to use this cheat table?
  1. Install Cheat Engine
  2. Double-click the .CT file in order to open it.
  3. Click the PC icon in Cheat Engine in order to select the game process.
  4. Keep the list.
  5. Activate the trainer options by checking boxes or setting values from 0 to 1

Fargogh182
Noobzor
Noobzor
Posts: 7
Joined: Tue Aug 08, 2023 2:04 am
Reputation: 0

Re: z Baldur's Gate 3

Post by Fargogh182 »

Anyone know if you can put armor passives on other blank armor? For instance the druid moon armor, could you put that passive on any blank armor piece using the table?

r3v4n
Expert Cheater
Expert Cheater
Posts: 74
Joined: Thu Mar 30, 2017 9:16 am
Reputation: 3

Re: z Baldur's Gate 3

Post by r3v4n »

Crazy work you people are doing here <3

One question: is it possible to add (all) the passive Spells like

Blade Ward
Resistance
Armour of Agathys
Mage Armour
[...]

to be activw all the time to all the party members?

User avatar
Noway3
Expert Cheater
Expert Cheater
Posts: 117
Joined: Sat Aug 12, 2023 12:20 pm
Reputation: 151

Re: z Baldur's Gate 3

Post by Noway3 »

EvenLess wrote:
Sat Aug 19, 2023 11:26 pm
EvenLess wrote:
Fri Aug 04, 2023 11:42 pm
  • 2023-08-20:
    1. Another list (.xlsx/Excel), available as a [Link]. It's even too large for Google Spreadsheets to import it.
      It contains ALL "GameObjects" found in ALL RootTemplates, with ALL attributes. 25139 rows, and more columns (attributes) I care to count (A to QT). A lot of these columns/attributes are probably irellevant, but it was easier to just extract all than try to figure out what to filter.
      The PowerShell script I wrote to do this, are inserted below. It took 30 minutes to complete on my system.
      Spoiler

      Code: Select all

      $Stopwatch = New-Object -TypeName System.Diagnostics.Stopwatch
      $Stopwatch.Start()
      $UnpackedDataFolder = [System.IO.FileInfo]'C:\Games\BG3-Tools\BG3-Modders-Multitool\UnpackedData'
      $MyDocuments        = [System.IO.FileInfo][System.Environment]::GetFolderPath('MyDocuments')
      $CheatTableFolder   = [System.IO.FileInfo]"$($MyDocuments.FullName)\My Cheat Tables\bg3"
      $LocalizationPath   = [System.IO.FileInfo]"$($UnpackedDataFolder.FullName)\English\Localization\English\english.xml"
      $CsvPath            = "$($CheatTableFolder)\all_templates.csv"
      
      $LocalizationData   = New-Object -TypeName System.Xml.XmlDocument
      $LocalizationData.PreserveWhitespace = $true
      $LocalizationData.Load($LocalizationPath.FullName)
      
      $RootTemplateFolders = @(
           "$($UnpackedDataFolder.FullName)\Shared\Public\Shared\RootTemplates"
          ,"$($UnpackedDataFolder.FullName)\Shared\Public\SharedDev\RootTemplates"
          ,"$($UnpackedDataFolder.FullName)\Gustav\Public\Gustav\RootTemplates"
          ,"$($UnpackedDataFolder.FullName)\Gustav\Public\GustavDev\RootTemplates"
      )
      $RootTemplates = Get-ChildItem -Recurse -File -Filter *.lsx -Path $RootTemplateFolders
      
      # Empty array to contain the objects.
      $Objects    = @()
      # Empty array to contain the attributes.
      $Attributes = @()
      foreach ($Template in $RootTemplates) {
          $Object = [ordered]@{}
          $XmlDocument = New-Object -TypeName System.Xml.XmlDocument
          $XmlDocument.PreserveWhitespace = $true
          $XmlDocument.Load($Template.FullName)
          $Nodes = $XmlDocument.SelectNodes("//node[@id='GameObjects']")
          if ($Nodes.Count -eq 0) { continue }
          $Nodes.attribute | ForEach-Object {
              $k = $_.id
              $v = $_.value
              if ($k -notin $Attributes) {
                  $Attributes += $k
              }
              $Object.Add($k, $v)
              if ($_.type -eq 'TranslatedString') {
                  $k = "$($k)English"
                  $v = $_.handle
                  if ($k -notin $Attributes) {
                      $Attributes += $k
                  }
                  $Object.Add("$($k)English", $LocalizationData.SelectSingleNode("//content[@contentuid='$($v)']").'#text')
              }
          }
          $Objects += New-Object -TypeName PSCustomObject -Property $Object
      }
      # All data are gathered, but we need to create a new object, where every entry contains all the same attribute/property keys, otherwise exporting to Csv apparently doesn't work very well.
      
      # Empty array to contain the objects.
      $oArray = @()
      foreach ($o in $Objects) {
          # Create/reset the hashtable used to all the attributes/properties.
          # The ones explicitly listed, are so they are sorted first (i.e. the first columnds).
          $oTable = [ordered]@{
              Type = ''
              MapKey = ''
              ParentTemplateId = ''
              Name = ''
              DisplayNameEnglish = ''
          }
          # Sort the collected attributes and add the rest to the hashtable.
          $Attributes | Sort-Object -Unique | ForEach-Object {
              if ($_ -notin $oTable.Keys) {
                  $oTable.Add($_, '')
              }
          }
          # Loop through all the attributes/properties.
          foreach ($k in $o.psobject.Properties.Name) {
              # Update the matching keys in the hashtable, with the collected value.
              $oTable."$($k)" = $o."$($k)"
          }
          # Add the table to the array.
          $oArray += New-Object -TypeName PSCustomObject -Property $oTable
      }
      $oArray | Export-Csv -NoTypeInformation -Force -Encoding UTF8 -Delimiter ';' -Path $CsvPath
      $Stopwatch.Stop()
      $Stopwatch.Elapsed
Added a link to an Excel-sheet containing EVERY RootTemplate that contains GameObjects. This includes items, characters and more. Be sure to only spawn items to inventory that actually have the CanBePickedUp attribute set to true. Otherwise I would recommend spawning to the ground.

I'll most likely remove several columns at some point, in order to get it reduced enough for Google Spreadsheets to be able to import it.
Thank you EvenLess for this great work!

I am a long time lurker here and decided to provide a small contribution to this forum:

I reworked your powershell script and optimized it for speed and for a smaller excel sheet output.

Thus, I converted it first to a python script (thanks to chatgpt for making the bulk of the work :) ) and then optimized it for speed using the pandas conversion libraries to generate the excel file. (Sorry, My Powershell knowledge is limted)

As a bonus, because I am playing the game in french, I also added an option for foreign languages: the resulting worksheet has both English and French translations

these are the timing and results on my system (note that I use a fast SSD-NVMe disk drive to achieve this):
- Processing 4 RootTemplate folders --> 5 seconds
- Exporting to CSV file --> 2 seconds ; resulting file size about 22 MB
- Exporting to excel --> 93 seconds ; resulting file size about 4 MB (thanks to XLSX compression I suppose)

here is the python code:
all_templates.py

Code: Select all

import xml.etree.ElementTree as ET
import csv
from collections import defaultdict, OrderedDict
from pathlib import Path
import time
from datetime import timedelta

#NOTE: openxyl is fine but it generate way to big excel files (46 MB in 487 seconds)
#import openpyxl

#NOTE: panda combined with XLSwWriter is somewhat faster and generates much smaller excel files (3.8 MB in 341 seconds )
# you need to import the panda and XlsxWriter libraries to use this script
#   pip install pandas
#   pip install XlsxWriter
import pandas

def elapsed_time(start_time):
    elapsed_time_seconds = time.time() - start_time
    elapsed_time = timedelta(seconds=elapsed_time_seconds)
    return str(elapsed_time)[:-3]  # Removing milliseconds

unpacked_data_folder = Path('G:/BG3/Tools/bg3-modders-multitool/UnpackedData')
output_folder = Path("G:/BG3/CE/Item UUIDs/Output")

english_langage = "English"
langage_file = english_langage+".xml"
english_path = unpacked_data_folder / english_langage / "Localization" / english_langage / langage_file

foreign_langage = "French"
langage_file = foreign_langage+".xml"
foreign_path = unpacked_data_folder / foreign_langage / "Localization" / foreign_langage / langage_file

csv_path = output_folder / "all_templates.csv"
excel_path_openxyl = output_folder / "all_templates_openxyl.xlsx"
excel_path_panda = output_folder / "all_templates_panda.xlsx"

localisation_data = ET.parse(english_path)
english_dict = {}  # Dictionary to store english translations


## English translations
for content in localisation_data.findall(".//content"):
    content_uid = content.get("contentuid")
    english_dict[content_uid] = content.text


## Foreign translations (french in this case)
localisation_data = ET.parse(foreign_path)
foreign_dict = {}  # Dictionary to store foreign translations

for content in localisation_data.findall(".//content"):
    content_uid = content.get("contentuid")
    foreign_dict[content_uid] = content.text

root_template_folders = [
    unpacked_data_folder / "Shared/Public/Shared/RootTemplates",
    unpacked_data_folder / "Shared/Public/SharedDev/RootTemplates",
    unpacked_data_folder / "Gustav/Public/Gustav/RootTemplates",
    unpacked_data_folder / "Gustav/Public/GustavDev/RootTemplates"
]

attributes = []
objects = []

print("-- Processing RootTemplatesFolders")
start_time = time.time()

for idx_folder, root_template_folder in enumerate(root_template_folders, start=1):
    print(f"Processing {root_template_folder}")
    root_templates_files = list(root_template_folder.glob("**/*.lsx"))
    root_templates_files_count = len(root_templates_files)

    print(f"--------------------------------------------------------------------------")
    for idx_file, template in enumerate(root_templates_files, start=0):
        if idx_file % 1000 == 0:
            print(f"{elapsed_time(start_time)} -- Processed {idx_file} of {root_templates_files_count} files in {idx_folder} of {len(root_template_folders)} folders")
        
        object_data = OrderedDict()
        xml_document = ET.parse(template)
        nodes = xml_document.findall(".//node[@id='GameObjects']")
        
        if not nodes:
            continue
        
        for node in nodes:
            for attr_node in node.findall(".//attribute"):
                k = attr_node.get("id")
                v = attr_node.get("value")
                if k not in attributes:
                    attributes.append(k)

                object_data[k] = v

                if attr_node.get("type") == "TranslatedString":
                    v_handle = attr_node.get("handle")

                    k_english = f"{k}{english_langage}"
                    translation_english = english_dict.get(v_handle, "")
                    if k_english not in attributes:
                        attributes.append(k_english)
                    object_data[k_english] = translation_english

                    k_foreign = f"{k}{foreign_langage}"
                    translation_foreign = foreign_dict.get(v_handle, "")
                    if k_foreign not in attributes:
                        attributes.append(k_foreign)
                    object_data[k_foreign] = translation_foreign

        objects.append(object_data)

    print(f"{elapsed_time(start_time)} -- Processed {idx_file} of {root_templates_files_count} files in {idx_folder} of {len(root_template_folders)} folders")
    print(f"--------------------------------------------------------------------------")

# ####################################################################################

print("-- Exporting to CSV file")
start_time = time.time()

with open(csv_path, "w", newline="", encoding="utf-8") as csv_file:
    csv_writer = csv.DictWriter(csv_file, fieldnames=attributes, delimiter=";", extrasaction="ignore")
    csv_writer.writeheader()
    csv_writer.writerows(objects)
elapsed_time = time.time() - start_time
print(f"-- CSV export completed in {elapsed_time:.2f} seconds")

# ####################################################################################

print("-- Exporting to Excel file using panda")
start_time = time.time()

# Create a DataFrame from the objects list
data = []
for obj in objects:
    data_row = [obj.get(attr, "") for attr in attributes]
    data.append(data_row)
df = pandas.DataFrame(data, columns=attributes)

# Write the DataFrame to Excel using XlsxWriter
with pandas.ExcelWriter(excel_path_panda, engine='xlsxwriter') as writer:
    df.to_excel(writer, index=False)

elapsed_time = time.time() - start_time
print(f"-- Excel export completed in {elapsed_time:.2f} seconds")

# ####################################################################################
"""
print("-- Exporting to Excel file using openxyl")
start_time = time.time()

wb = openpyxl.Workbook()
ws = wb.active

# Write header row
header_row = list(attributes)
ws.append(header_row)

# Write data rows in bulk
data_rows = [
    [obj.get(attr, "") for attr in attributes]
    for obj in objects
]

#rows_done = 0
for row in data_rows:
    ws.append(row)
#    rows_done += 1
#    if rows_done % 1000 == 0:
#        print(f"rows done: {rows_done}" )

#print(f"ALL rows done: {rows_done}" )
print("Saving worksheet")
wb.save(excel_path_openxyl)

elapsed_time = time.time() - start_time

print(f"-- Excel export completed in {elapsed_time:.2f} seconds")

"""
here are link to the resulting output files:
[Link]
[Link]

Here is a high level guide to run the python script yourself:
  1. Install Python v3
  2. Install the required additional libraries (`pip install pandas Xlsxwriter`)
  3. adapt the path related variables in the python script to your environment
  4. adapt the "french translation" bonus to another language or just comment it out if you don't want it.
  5. run the script (`python all_templates.py`)
  6. Enjoy!
Last edited by Noway3 on Mon Aug 21, 2023 6:00 pm, edited 1 time in total.

matholomew
What is cheating?
What is cheating?
Posts: 3
Joined: Mon Aug 21, 2023 5:07 pm
Reputation: 1

Re: z Baldur's Gate 3

Post by matholomew »

Sorry if this has been asked before but I was wondering if there was simple code available to remove tags. Peeking at the console commands, you can add character tags, but not remove them.

Example for "Add Detect Thoughts":

Code: Select all

{$lua}
if syntaxcheck then return end
[ENABLE]
SetTagOnPlayer("7e0395f8-aa53-4549-9af3-e2d203d678ee")
[DISABLE]
Is there a function that I just can't see to implement this myself, or has this not been found yet? (spoiler: i'm a total noob at this, but the code seems pretty straight forward)

Also, is there a Patreon or something where I can show my support?

Kami101
Cheater
Cheater
Posts: 30
Joined: Mon Jun 13, 2022 2:22 pm
Reputation: 2

Re: z Baldur's Gate 3

Post by Kami101 »

Can somebody please help with the UUID codes for scrolls.

yasa
Noobzor
Noobzor
Posts: 6
Joined: Tue Nov 17, 2020 12:04 am
Reputation: 0

Re: z Baldur's Gate 3

Post by yasa »

Every time I enable immune to disarm, my game crashes. It started on v4.1.1.3636828 of the game and continues on v4.1.1.3645567. GOG version.

It doesn't crash if I set them before adding Char resource and movement cheats. Most odd.
Last edited by yasa on Mon Aug 21, 2023 5:49 pm, edited 1 time in total.

Pebyoghmoob
Noobzor
Noobzor
Posts: 10
Joined: Sun Aug 20, 2023 6:02 am
Reputation: 1

Re: z Baldur's Gate 3

Post by Pebyoghmoob »

Fargogh182 wrote:
Mon Aug 21, 2023 4:46 pm
Anyone know if you can put armor passives on other blank armor? For instance the druid moon armor, could you put that passive on any blank armor piece using the table?
I would like to know how to add armor passives to camp clothes also, like underwear, etcs.

Anyone know how to add "Fly" spell as a passive? To have permanent flight

EvenLess
Expert Cheater
Expert Cheater
Posts: 181
Joined: Fri Aug 04, 2023 10:59 pm
Reputation: 207

Re: z Baldur's Gate 3

Post by EvenLess »

themaoci wrote:
Sat Aug 19, 2023 12:31 pm
- added start game initializer (for testing not sure if that gonna work...) [EvenLess]
I haven't tested your CT, but I know the launching of the game works.

I've updated my script a bit, and added both bg3_dx11.exe and bg3.exe, but as a table that I can loop through, rather than two static variables :)

The thing that isn't working right now, in my code below, is attaching to the game process, if it was launched by the script. I think it's because the process respawns or something. At least the very first PID that it attaches to, is not the PID that I can attach to a few moments later (by disabling/enabling my script again). Maybe your timer is what fixes this. Haven't gotten my head wrapped around that yet.

Code: Select all

[ENABLE]
{$lua}
if syntaxcheck then return end
local executable           = { 'bg3_dx11.exe', 'bg3.exe' }
local executablePath       = 'C:\\Games\\Steam\\steamapps\\common\\Baldurs Gate 3\\bin\\'
local executableParameters = '--skip-launcher'
local openedPID = getOpenedProcessID()
local actualPID = nil

-- Find the first process with either of the bg3 executables.
for i = 1, #executable do
  actualPID = getProcessIDFromProcessName(executable[i])
  if actualPID ~= nil then
    print(string.format('Found "%s" with PID "%s".', executable[i], actualPID))
    executableFile = executable[i]
    break
  end
end

-- Check if game is running.
if actualPID == nil then
  print(string.format('Attempting to launch "%s".', executable[1]))
  createProcess(executablePath .. executable[1], executableParameters)
  actualPID = getProcessIDFromProcessName(executable[1])
end

-- Check if attached to game.
if actualPID ~= nil and actualPID ~= openedPID then
  print(string.format('Attaching to new PID "%s". Old PID was "%s".', actualPID, openedPID))
  -- Might need some delay here? When both launching and attaching in one go, loading Console Commands doesn't work.
  openProcess(tonumber(actualPID))
else
  print(string.format('Already attached to "%s".', openedPID))
end
{$asm}
[DISABLE]
As for the hardcoded path, that is not the default path for the game. The path either needs to manually edited by the end-user, or if you can figure out a way to read values from the HKLM registry, then you can probably make that dynamic too.

It should be possible to retrieve the installation path from the installed applications list. It's located in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall (or HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall if 32-bit install on 64-bit Windows). Searching through all the sub-keys for the for the DisplayName equals Baldur's Gate 3. That should give you the key that contains BG3. If it's a Steam game you'll actually have the Steam Install path as part of the UninstallString. If it's not a Steam game, I would think the InstallLocation will have the proper path, as any normally installed application. You can also read the Steam InstallPath from the key HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Valve\Steam (or HKEY_LOCAL_MACHINE\SOFTWARE\Valve\Steam for 32-bit Windows).

Oxiras
Noobzor
Noobzor
Posts: 8
Joined: Fri Jun 17, 2022 7:03 pm
Reputation: 0

Re: z Baldur's Gate 3

Post by Oxiras »

So RemovePassiveFromPlayer seems to be able to remove passives added through CE but not existing ones. I want to replace Auntie Ethel's boon from STR to CHA. But can't remove the existing STR one. Any ideas?

bibloffxi
What is cheating?
What is cheating?
Posts: 3
Joined: Wed Apr 07, 2021 10:44 pm
Reputation: 0

Re: z Baldur's Gate 3

Post by bibloffxi »

oilnarak01 wrote:
Mon Aug 21, 2023 12:32 pm
bibloffxi wrote:
Mon Aug 21, 2023 11:01 am
I used the add Minthra to party at start of my second playthru. I am now at goblin camp. If I attack she goes hostile, and I can't talk to her in her normal spot to accept siding with her. Is this cheat busted or i need to wait till i finished the druid part of game? Any way to salvage my play thru or i need to start over.
here your solution

Hi , guys i found a way to just add Minthara to your party interactable and not bugged other things out

here're my solution you'll need a Cheat Engine search google with Cheat Engine BaldursGate3

first you needed to be in early game like in act 1 not kill goblin boss yet

then follow this step

add Minthara to your part by Console Commands --> Register Commands --> Set Flags --> Spawn Minthara as a Companion (if early in the story)

progress game like normal you can have Minthara in your party too if you like

careful with this one ! then you reach goblin camp there're 2 options

3.1.1 take Minthara out of party first then kill other 2 goblins bosses (if you kill them while she's in party she will become hostile)

3.1.2 after kill 2 bosses go to camp invite Minthara to your party then go to where she's original stand , stove , jump her in to abyss (she had to die once) then the quest or kill goblin bosss will mark as complete !!

3.1.3 don't worry about her go back to camp talk to skeleton guy and resurrect her

3.1.4 done ! she in our party again , interactable , and teifling is saved too

3.2.1 invite Minthara to your party then go to where she's original stand , stove , jump her in to abyss (she had to die once) then go kill other 2 bosses and the quest or kill goblin bosss will mark as complete !! (Note after stove her to death don't go to camp to resurrect her yet kill other 2 bosses first!)

3.2.2 don't worry about her go back to camp talk to skeleton guy and resurrect her

3.2.3 done ! she in our party again , interactable , and teifling is saved too

then go talk to halsin , zevlor progress route as you kill goblin leader route you'll have teifling celebrate event at your camp

teifling will show up as last night inn , Minthara won't show up at moonrise tower (of cause she's dead in this route) butttt your already got her in party in the first place ! xD

NOTE ! : if you do this when you arrive at moonrise tower for the first time if you have Minthara in your party tell her to go to camp first because if she's in your party it'll trigger cutscene that Minthara being punished and also trigger a quest to save Minthara and that quest will bugged out becuase you already saved her , to avoid this just tell Minthara to stay at camp enter main hall cutscene that goblin being punished without Minthara show up will happen (as normal as you do a save teifling route) after that cutscene you're free to have Minthara back in your party

i'm at moonrise tower atm , got Karlach second upgrade at last inn too , not found any bug yet

Thx when i got there she was hostile. Killed her and raised with withers. It worked so thx.

Tiffany
Expert Cheater
Expert Cheater
Posts: 101
Joined: Fri Mar 24, 2017 9:38 am
Reputation: 33

Re: z Baldur's Gate 3

Post by Tiffany »

Sooo, uh... I'm playing as Gale as the main character (not a companion) and I have no option to consume magical items yet the quest is telling me I need to, and getting desperate, etc.

Is there some script I could run to force it to give me a consume dialog or consume context menu or just make it think it's resolved as if I did consume something?

It'd just be really awkward to TPK due to a bug.

edit: Seems there's a cutscene that unlocks it much further in than one would expect, coming from experiencing him as a follower.
Last edited by Tiffany on Mon Aug 21, 2023 11:15 pm, edited 1 time in total.

Oxiras
Noobzor
Noobzor
Posts: 8
Joined: Fri Jun 17, 2022 7:03 pm
Reputation: 0

Re: z Baldur's Gate 3

Post by Oxiras »

Oxiras wrote:
Mon Aug 21, 2023 5:52 pm
So RemovePassiveFromPlayer seems to be able to remove passives added through CE but not existing ones. I want to replace Auntie Ethel's boon from STR to CHA. But can't remove the existing STR one. Any ideas?
So the problem is eating the hag hair adds "Auntie Ethel's Boon" and that has the passive "HAG_Hair_STR_Passive" tied to it. Does anyone know how to remove "Auntie Ethel's Boon"?

kain200
Cheater
Cheater
Posts: 40
Joined: Thu Apr 22, 2021 7:44 pm
Reputation: 1

Re: z Baldur's Gate 3

Post by kain200 »

This is great! Is there any chance you could make a version of this to support 8 party members?

themaoci wrote:
Sun Aug 20, 2023 3:01 pm
Improoved companion aprooval and attitude (once point 1 is done you can add attitude all you want)


Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>399</ID>
      <Description>"Companion Cheats (disabling will reset fields) [2WS] by TheMaoci"</Description>
      <LastState Activated="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript Async="1">
[ENABLE]
alloc(m_MainCharacter,0x512)
registersymbol(m_MainCharacter)

alloc(m_Party_2,0x512)
registersymbol(m_Party_2)

alloc(m_Party_3,0x512)
registersymbol(m_Party_3)

alloc(m_Party_4,0x512)
registersymbol(m_Party_4)

m_MainCharacter:
 dq 0

m_Party_2:
 dq 0

m_Party_3:
 dq 0

m_Party_4:
 dq 0


[DISABLE]
unregistersymbol(m_MainCharacter)
dealloc(m_MainCharacter)

unregistersymbol(m_Party_2)
dealloc(m_Party_2)

unregistersymbol(m_Party_3)
dealloc(m_Party_3)

unregistersymbol(m_Party_4)
dealloc(m_Party_4)
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>104311</ID>
          <Description>"1. Selection"</Description>
          <Options moHideChildren="1" moManualExpandCollapse="1"/>
          <LastState Value="" Activated="1" RealAddress="00000000"/>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>104302</ID>
              <Description>"Select Main Character [Slot 1]"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = GetHostCharacter()
writeString("m_MainCharacter", tostring(variable))
[DISABLE]
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>104307</ID>
                  <Description>"Variable Saved"</Description>
                  <LastState RealAddress="1F3663F0000"/>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>String</VariableType>
                  <Length>36</Length>
                  <Unicode>0</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>m_MainCharacter</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>104304</ID>
              <Description>"Select Companion [Slot 2]"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = GetHostCharacter()
writeString("m_Party_2", tostring(variable))
[DISABLE]
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>104310</ID>
                  <Description>"Variable Saved"</Description>
                  <LastState RealAddress="1F3663F0512"/>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>String</VariableType>
                  <Length>36</Length>
                  <Unicode>0</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>m_Party_2</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>104306</ID>
              <Description>"Select Companion [Slot 3]"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = GetHostCharacter()
writeString("m_Party_3", tostring(variable))
[DISABLE]
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>104309</ID>
                  <Description>"Variable Saved"</Description>
                  <LastState RealAddress="1F3663F0A24"/>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>String</VariableType>
                  <Length>36</Length>
                  <Unicode>0</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>m_Party_3</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>104305</ID>
              <Description>"Select Companion [Slot 4]"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = GetHostCharacter()
writeString("m_Party_4", tostring(variable))
[DISABLE]
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>104308</ID>
                  <Description>"Variable Saved"</Description>
                  <LastState RealAddress="1F3663F0F36"/>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>String</VariableType>
                  <Length>36</Length>
                  <Unicode>0</Unicode>
                  <CodePage>0</CodePage>
                  <ZeroTerminate>1</ZeroTerminate>
                  <Address>m_Party_4</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>104312</ID>
          <Description>"2. Add"</Description>
          <Options moHideChildren="1" moManualExpandCollapse="1"/>
          <LastState Value="" Activated="1" RealAddress="00000000"/>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>104313</ID>
              <Description>"Companion [Slot 2]"</Description>
              <LastState Value="" RealAddress="00000000"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>104316</ID>
                  <Description>"+10 Attitude"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_2")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 10)
ExecuteCall("AddAttitudeTowardsPlayer")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104317</ID>
                  <Description>"+10 Approval"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_2")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 0)
SetArgToLong(3, 10)
ClearArg(4)
ExecuteCall("ChangeApprovalRating")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104318</ID>
                  <Description>"+100 Attitude"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_2")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 100)
ExecuteCall("AddAttitudeTowardsPlayer")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104319</ID>
                  <Description>"+100 Approval"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_2")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 0)
SetArgToLong(3, 100)
ClearArg(4)
ExecuteCall("ChangeApprovalRating")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>104315</ID>
              <Description>"Companion [Slot 3]"</Description>
              <LastState Value="" RealAddress="00000000"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>104320</ID>
                  <Description>"+10 Attitude"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_3")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 10)
ExecuteCall("AddAttitudeTowardsPlayer")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104321</ID>
                  <Description>"+10 Approval"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_3")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 0)
SetArgToLong(3, 10)
ClearArg(4)
ExecuteCall("ChangeApprovalRating")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104322</ID>
                  <Description>"+100 Attitude"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_3")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 100)
ExecuteCall("AddAttitudeTowardsPlayer")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104323</ID>
                  <Description>"+100 Approval"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_3")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 0)
SetArgToLong(3, 100)
ClearArg(4)
ExecuteCall("ChangeApprovalRating")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>104314</ID>
              <Description>"Companion [Slot 4]"</Description>
              <LastState Value="" RealAddress="00000000"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>104324</ID>
                  <Description>"+10 Attitude"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_4")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 10)
ExecuteCall("AddAttitudeTowardsPlayer")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104325</ID>
                  <Description>"+10 Approval"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_4")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 0)
SetArgToLong(3, 10)
ClearArg(4)
ExecuteCall("ChangeApprovalRating")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104326</ID>
                  <Description>"+100 Attitude"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_4")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 100)
ExecuteCall("AddAttitudeTowardsPlayer")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
                <CheatEntry>
                  <ID>104327</ID>
                  <Description>"+100 Approval"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript Async="1">{$lua}
if syntaxcheck then return end
[ENABLE]
local variable = readString("m_Party_4")
SetArgToString(0, variable)
local mc = readString("m_MainCharacter")
SetArgToString(1, mc)
SetArgToLong(2, 0)
SetArgToLong(3, 100)
ClearArg(4)
ExecuteCall("ChangeApprovalRating")
[DISABLE]
</AssemblerScript>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>

Wurstwasser
What is cheating?
What is cheating?
Posts: 1
Joined: Mon Aug 21, 2023 6:54 pm
Reputation: 0

Re: z Baldur's Gate 3

Post by Wurstwasser »

--
Last edited by Wurstwasser on Mon Aug 21, 2023 7:12 pm, edited 1 time in total.

Post Reply

Who is online

Users browsing this forum: 86sewer, AhrefsBot, AmazonBot, Bing [Bot], FreakZilla, Ginger256, Google [Bot], Google Adsense [Bot], HazeckX, jonaaa, Junxionghua, kanifeli, kdr4cu, litrpg, Mak&Me, SemrushBot, Shark1200, Sxsxarael, Tea_Grunge, tsubasa830, Zanzer