Trying different Title screen offset.

This commit is contained in:
sigonasr2 2020-03-16 01:49:57 +09:00
parent c4b28ebeba
commit 36e5899549
4 changed files with 94 additions and 3 deletions

Binary file not shown.

View File

@ -0,0 +1,81 @@
package sig.modules.RabiRace;
import java.awt.Color;
public enum ColorLocation {
UNKNOWN(0,"Unknown",52,52,52),
STARTING_FOREST(1,"Starting Forest",110,181,103),
SPECTRAL_CAVE(2,"Spectral Cave",97,103,162),
FORGOTTEN_CAVE(3,"Forgotten Cave",135,110,75),
NATURAL_AQUARIUM(4,"Natural Aquarium",128,169,115),
DLC2BOSSARENA(5,"Boss Arena",255,255,255),
FORGOTTENCAVEII(6,"Forgotten Cave II",146,108,109),
UPPERFOREST(7,"Upper Forest",0,128,84),
BLANK(8,"???",52,52,52),
RABIRABIBEACH(9,"Rabi Rabi Beach",98,135,193),
GOLDENPYRAMID(10,"Golden Pyramid",198,161,75),
RABIRABIRAVINE(11,"Rabi Rabi Ravine",110,181,103),
RABIRABITOWN(12,"Rabi Rabi Town",217,145,126),
RABIRABIPARK(13,"Rabi Rabi Park",181,110,103),
UPRPRCBASE(14,"UPRPRC Base",110,110,181),
SKYISLANDTOWN(15,"Sky Island Town",142,105,150),
AZURESNOWLAND(16,"Azure Snowland",142,105,235),
SYSTEMINTERIORI(17,"System Interior I",104,156,207),
EVERNIGHTPEAK(18,"Evernight Peak",75,97,210),
EXOTICLAB(19,"Exotic Laboratory",175,103,134),
GOLDENRIVERBANK(20,"Golden Riverbank",206,156,105),
FLOATINGGRAVEYARD(21,"Floating Graveyard",180,59,54),
SYSTEMINTERIORII(22,"System Interior II",212,77,86),
AURORAPALACE(23,"Aurora Palace",34,169,209),
FLOATINGLIBRARY(24,"Floating Library",118,198,166),
NATURALAQUARIUM(25,"Natural Aquarium",128,169,115),
SKYHIGHBRIDGE(26,"Sky-High Bridge",106,195,182),
WARPDESTINATION(27,"Warp Destination",138,178,88),
VOLCANICCAVERNS(28,"Volcanic Caverns",186,45,42),
PLURKWOOD(29,"Plurkwood",195,98,45),
HALLOFMEMORIES(30,"Hall of Memories",64,99,164),
ICYSUMMIT(31,"Icy Summit",45,104,146),
HALLOFMEMORIESII(32,"Hall of Memories II",220,143,64),
HALLOWEENAREA(34,"Halloween Area",121,55,53),
HOSPITAL(50,"Hospital",97,97,136),
RABIRABIRAVINEII(55,"Rabi Rabi Ravine II",42,184,120),
NOAH3BOSSARENA(81,"Noah 3 Boss Arena",52,52,52),
NOAH1BOSSARENA(83,"Noah 1 Boss Arena",52,52,52),
RUMIBOSSARENA(87,"Rumi Boss Arena",203,125,122),
HALLOFMEMORIES21(95,"Hall of Memories II",255,255,0),
HALLOFMEMORIES22(96,"Hall of Memories II",255,255,0),
HALLOFMEMORIES23(97,"Hall of Memories II",255,255,0),
HALLOFMEMORIES24(98,"Hall of Memories II",255,255,0),
;
int color;
String name;
Color colorval;
ColorLocation(int val, String name, int r, int g, int b) {
color = val;
this.name=name;
this.colorval = new Color(r,g,b);
}
public static Color getColor(int id) {
for (ColorLocation cl : ColorLocation.values()) {
if (cl.color == id) {
return cl.colorval;
}
}
return null;
}
public static String getLocationName(int id) {
for (ColorLocation cl : ColorLocation.values()) {
if (cl.color == id) {
return cl.name;
}
}
return "";
}
}

View File

@ -529,11 +529,19 @@ public class RabiRaceModule extends Module{
private boolean NoMessageDisplayed() {
return readIntFromMemory(MemoryOffset.MESSAGE_TIMER)==0;
}
public boolean OnTitleScreen() {
/*return readIntFromMemory(MemoryOffset.INTERFACE_GRAPHICS_CONTROLLER)==809054496 ||
readIntFromMemory(MemoryOffset.INTERFACE_GRAPHICS_CONTROLLER)==1593843744 ||
readIntFromMemory(MemoryOffset.INTERFACE_GRAPHICS_CONTROLLER)==842018353 ||
readIntFromMemory(MemoryOffset.INTERFACE_GRAPHICS_CONTROLLER)==706755104;*/
return readIntFromMemory(MemoryOffset.TITLE_SCREEN)==0;
}
private void UpdateMyProfile() {
if (foundRabiRibi) {
//System.out.println("Called.");
int paused = readIntFromMemory(MemoryOffset.PAUSED) + readIntFromMemory(MemoryOffset.TITLE_SCREEN);
int paused = readIntFromMemory(MemoryOffset.PAUSED) + (OnTitleScreen()?1:0);
//int paused = 0; //TODO FORCE UNPAUSE FOR NOW.
float itempct = readFloatFromMemory(MemoryOffset.ITEM_PERCENT);
myProfile.isPaused = paused>=1;
@ -541,7 +549,7 @@ public class RabiRaceModule extends Module{
if (mySession!=null && mySession.isCoop()) {
if (mySession!=null && mySession.isCoop()) {
if (readIntFromMemory(MemoryOffset.TITLE_SCREEN)>=1) {
if (OnTitleScreen()) {
if (waitframes--<=0) {
mapdata.clear();
newmapdata.clear();

View File

@ -144,7 +144,9 @@ public enum MemoryOffset {
MAP_PERCENT(0x16E807C,0x13413E4,0x1342404+OffsetHelper.MEMORY_OFFSET_V188_TO_V1881,0x1366404,0x16E48FC,0), //Float
RAINBOW_EGG_COUNT(0xD65FD4,0xD65FD4+OffsetHelper.KEY_ITEM_OFFSET_V175_TO_V1851,0xD65FD4+OffsetHelper.MEMORY_OFFSET_V175_TO_V1881,0xD65FD4+OffsetHelper.MEMORY_OFFSET_V175_TO_V190,OffsetHelper.KEY_ITEM_OFFSET_V175_TO_V199,OffsetHelper.KEY_ITEM_OFFSET_V175_TO_V199T),
PAUSED(0x1038D88,0xC969A0,0xC979A0,0xCBB9AC,0x1036D88,0),
TITLE_SCREEN(0xDA6EC8,0,0,0,0,0), //1 = Title Screen, 0 = Anywhere else
TITLE_SCREEN(0x16E7EFC,0,0,0,0,0), //0 = Title Screen, 255 = Anywhere else
//INTERFACE_GRAPHICS_CONTROLLER(0x16B4B8C,0,0,0,0,0), //A location in memory that stores a lot of interface-related items. USeful for determining title screen.
EVENT_START(0x167A700,0,0,0,0,0),
EVENT_END(0x167AB24,0,0,0,0,0),