A collection of scripts to be used with the PCSX-Redux emulator for the games I am working on.
widgets.lua implements several support functions, file loading functions and imgui helpers:
- drawFreezeCheck
- drawFrozen
- drawMemory
- drawColorPicker
- drawCheckbox
- drawSlider
- drawMemory
- drawInputInt
- drawDrag
- drawRadio
- drawJumpButton
- drawInputText
- drawSaveButton
- drawLoadButton
- drawLoadSave
gui.lua implements the output process, and some helpers:
- drawRectangle
- text
- textBox
- addmessage
out.lua is the file to replace the content of the original output.lua to enable drawing into the screen.
disassembler.lua contains exactly that.
It can display and edit values like enemies and Ashley's stats and coordinates, insert strings into memory, modify the inventory, load any room, freeze memory addresses and output text on top of the screen. It also has a custom lua memory display and saveStates manager.
vg.lua is the main file and the one executed by the emulator.
map.lua contains the area and text encoding info for the game.
Showcase video of a older version:
Type into the lua console:
dofile 'C:\\Path\\to\\vg.lua'
Or use the command line arguments
pcsx.exe -loadiso "Vagrant Story.bin" -dofile "vg.lua"
Ensure the Lua interpreter can load the files by placing them in your working directory or in the emulator’s main folder (either directly or in a lua subfolder you create).
You can use this script for your own needs. Example:
gui = require 'gui'
w = require 'widgets'
gui.setOutput(
function()
gui.text(150,50,'Look at me')
gui.textBox(150,75,'Look at me',{r = 1, g = 1, b = 0})
gui.addmessage( 'Message' )
gui.addmessage( '--------' )
gui.printCoordinates()
end
)
function DrawImguiFrame()
imgui.safe.Begin('Title', true, function()
w.drawSlider(0x80000000, 'Something', 'uint8_t*', 0, 0xFF)
end)
end