Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Hazedge

Pages: 1 2 [3] 4 5
51
Thats some pretty interesting ideas.
I was thinking about Esuna if I ran out of ideas for too long as well but was letting it as last resort.

The monster in question is the T-Rexaur. In the mod I was planning to give a big surprise to players who think this game is the same, so I was putting him to give a surprise react: when blinded for too long, he enters in a rage mode and start attacking with higher SPD.

Since we cant remove the status then the HIT 255 is a good choice, I liked it
Whats this unknown05(15)? Sorry my ignorance, I'm still learning new codes for these AIs

52
I't's self.status != BLIND

But I don't think it will work anyway. If it is, that should be interesting !
I've put self.status == BLIND on purpose, the logic is to count stacks for each turn hes blinded to enter BERSERK and become immune to BLIND.

EDIT:
OH YOU MEAN THATS THE CODE!! ROFL
Sorry I interpreted it wrong xD
I'm gonna try it right away

EDIT2:
Nop, not happening.
Syntax Error, no viable alternative at input
I thought about changeresistance(arg1, arg2) but I think it only work with elements, not status.

53
Hey guys!
I was trying to program one specific AI and got stuck in something thats not working (or I'm doing it the wrong way).

Code: [Select]
if (self.status == BLIND) {
self.varDD += 1
if (self.varDD >= 5) {
self.status - BLIND
                self.varDE += 1
}
}

My intention is to remove the status BLIND when the varDD gets to 5 or more and make the enemy use BERSERK when self.varDE gets to 3, but the program don't recognize the minus in self.status - BLIND.
Is there a right way to make it work?
I can't make variables do the same thing too, all I could do is put then to = 0 instead of - value.

EDIT:
Taking advantage of this post, what code should I use to change one enemy's resistence?
In this case I want to make him immune to BLIND when BERSERK is used.

54
A while back, someone posted a link to a JP website that had the AI scripts for each enemy in the game. Can't find the link, so I re-upped the archive here: https://mega.nz/#!FGwCzA7I!oE5sYXmEqdPUDXhDHhT7Y8fqlqFJ5bf8kZIOipSH72o

It has data on each targetadv as well as the unknowns in Ifrit's AI editor, so it may help you figure it out. For example, the targetadv in the second Seifer battle selects for the character with the lowest Fire resistance.

edit: Comparing Ifrit to the txt files and it seems that arg2 is indeed the target.

200 - enemy (a player character)
201 - ally (another enemy)

A 3 in arg3 seems to be checking to see if a condition doesn't apply, such as not having a status effect.

arg4:
3 = Blind
4 = Silence
19 = Stop
21 = Protect
22 = Shell
23 = Reflect
30 = Confusion
204 = lowest HP

Thank you very much! This saved my day!! +1 Like

55
Gameplay / Re: [FFVIII-PCSteam] Add text on enemy AI?
« on: 2018-09-29 14:04:20 »
Hey there, been away for a while and hoped this question was answered... Does anyone know the answer for this?

56
So uh... Been more than 30 days and no one could answer this for me   :'(
Dont know if it was worth making another post asking the same question or just reply here, I just hope someone could explain this.

57
Gameplay / [FFVIII-PCSteam] Add more musics?
« on: 2018-09-29 06:27:52 »
Hey guys, I know we can change the OGG music using Roses and Wine, but is it possible to add more music to the game's database? And if its possible or not, what AI command I could write to trigger any music like the Griever's Shockwave Pulsar, Ultimecia junction to Griever and Final Ultimecia?

58
So guys, I was looking around the Cactilio v0.2 and had to ask this.
A friend gave me the idea to add more monsters, just by copying the same ones but painting their texture to another color and making another AI.
I didnt tried it yet, don't know if the game will bug hard or anything, just wanted to know before trying this.

A) Is it possible to add more encounters?
B) Making a copy of a monster, painting with another color and putting into a new Monster Group would bug the game?

EDIT:
The monster won't show up on Cactilio v0.2 monster list =/

59
Gameplay / [FFVIII-PCSteam] Add text on enemy AI?
« on: 2018-08-25 16:03:26 »
While learning about the AI of FFVIII (kinda buggy) I noticed the Text tab. Is it possible to add more Texts? Or even modify the present ones? I tried modifying the premade ones and it didnt saved.

60
Gameplay / Re: [FFVIII-PCSteam] Modify max Draw amount
« on: 2018-08-25 16:00:34 »
Thanks, I've managed to make the minimum amount of 10 and it increases with MAG amount using: 8FE00 = 09 7D 05 B8 0A

61
Gameplay / Re: [FFVIII-PCSteam] Bug with Caterchipillar
« on: 2018-08-25 15:58:52 »
Thank you very much! This will help me alot!

62
Gameplay / Re: [FFVIII-PCSteam] Bug with Caterchipillar
« on: 2018-08-24 19:14:41 »
One thing you could try is editing the enemies for an area (Balamb area for instance, or fire cavern) and then editing the formations to test which can appear with others safely. The ones that can, pair them up. The ones that can't, isolate them from other enemy types.
That looks like a good idea, I have Cactilio_v0.2 but I would need to check out every enemy group to find the right one. Isnt there a list of enemy group I could check out instead of checking one by one?

63
Gameplay / Re: [FFVIII-PCSteam] Modify max Draw amount
« on: 2018-08-24 19:02:42 »
I implemented a feature like this recently, so here's the hex for it + additional notes:

#Adjustment of in-battle Draw
#      09 7E 05 B8 09 (Default: 9 max per draw)
#      01 7E 05 B8 64 (Draw 100 so long as 1+ is drawn)
#      09 7D 05 B8 09 (Draw minimum of 9, no upper cap - changes jump type to greater/equal)
8FE00 = 09 7D 05 B8 09

So the first set of values is the default hex, what the game does is it checks if your Draw was over 9 and sets it to 9 if this check returns true. The 2nd set is to make the game draw 100 every time you draw successfully (changes check to 1, and sets value drawn to 100/64h).

The 3rd set is what I'm currently using for FF8 NT, it flips the check so that it looks for Draws below 9 and sets it to 9 as a minimum; this means that the player will always draw 9 but can draw above this (10-100) depending on how high their magic stat is.

So whichever you'd want to use, you'd replace the 8FE00 = ?? with the desired hex. I think for removing the upper cap you'd want to set the check value to 64 or something so:
8FE00 = 64 7E 05 B8 64

If that doesn't work, then use 01 7D 05 B8 01

For implementation, I'm using DLPB's Hexttools which contains a few methods of patching an .exe with new hex. I use Hextedit which involves putting a notepad file with valid hext instructions into the HE_IN folder and dropping a FF8.exe into the Hextedit folder. When I want to run the notepad and patch an .exe, I double-click the hextedit application and it'll read any notepad files contained within the HE_in folder.

Here's a sample of a hextedit notepad file, typically you'll have the target file name written at the top of it with notes/comments written with a # and actual .exe addresses with the desired hex written in: https://pastebin.com/wySn42YE

What the hex translates to can be seen if you have a tool like cheat engine to attach to the game process while it's running. Add +400000 to the address (so 48FE00) and you'll be able to look more directly at the assembly code for the Draw value check.
I wrote the notepad file inside the FINAL FANTASY VIII\HL_Files\Hext_in named drawhext.txt, when I open the game the log says: Line 9 (DrawHext.txt): Could not write to memory.
Line 9 would be the 8FE00 = XX XX XX.... and all the three codes present was Drawing 9 fixed amount each time
Am I doing something wrong? This is what I wrote inside the drawhext.txt:
Code: [Select]
A:\Steam\steamapps\common\FINAL FANTASY VIII\FF8_EN.exe
#Insert the name/location of the .exe to be patched above
#Example: D:\Steam\steamapps\common\FINAL FANTASY VIII\FF8_EN.exe

#Adjustment of in-battle Draw
#       09 7E 05 B8 09 (Default: 9 max per draw)
#       01 7E 05 B8 64 (Draw 100 so long as 1+ is drawn)
#       09 7D 05 B8 09 (Draw minimum of 9, no upper cap - changes jump type to greater/equal)
8FE00 = 09 7D 05 B8 09

EDIT:
But of course.... I was testing out with early game levels, when I tried with a LV40+ save it goes from 9 to 18 draw amount.
Its working, but the error Line 9 (DrawHext.txt): Could not write to memory. still shows up, it wont make any problems right?

64
Hey guys, after making my own AI with some monsters, I've encountered a pretty strange bug and hoped someone could explain whats going on and if there is some way to fix it.
When I changed the AI of Bite Bug, Caterchipillar got invisible during the fights hes included in the same group (its still present, doing attacks the way I wrote on its AI, but only the shadow showing up), like the one theres 1x Caterchipillar and 2x Bite Bugs in Balamb forest (near Fire Cavern). If I change the Caterchipillar AI nothing wrong happens, but changing Bite Bug's does happen.
Whats going on?

This is the code I wrote on Bite Bug's AI:
Code: [Select]
if (self.status == CONFUSION) {
    target(207)
    domoveid(0)
    return
}
if (self.varDC < 5) {
    self.varDC += 1
}
if (self.status == AURA) {
    self.varDC += 1
    return
}
if (self.varDC <= 2) {
    target(201)
    domoveid(0)
    return
}
if (self.varDC >= 5) {
    if (rand() % 1 == 0) {
        self.varDC = 0
        target(201)
        domoveid(2)
        return
    }
}
if (rand() % 1 == 0) {
    target(201)
    domoveid(1)
    return
}
else {
    target(201)
    domoveid(0)
    return
}

And this is Caterchipillar's:
Code: [Select]
if (self.status == CONFUSION) {
    target(207)
    domoveid(0)
    return
}
if (self.status == AURA) {
    self.varDC += 1
}
if (self.varDC < 5) {
    self.varDC += 1
}
if (self.hp < 4) {
    if (rand() % 1 == 0) {
        target(200)
        domoveid(4)
        return
    }
}
if (self.varDC < 4) {
    if (rand() % 1 == 0) {
        self.varDC += 1
        target(201)
        domoveid(0)
    }
    else {
        target(201)
        domoveid(1)
    }
    return
}
if (self.varDC >= 4) {
    if (rand() % 1 == 0) {
        target(201)
        domoveid(2)
    }
    else {
        target(204)
        domoveid(3)
    }
    if (rand() % 1 == 0) {
        self.varDC = 0
    }
    else {
        self.varDC = 1
    }
    return
}
self.varDC += 1
target(201)
domoveid(0)

65
is my file correct? format txt

#Offset all addresses
+400000
#Break HP Limit GF
95E6D = 81 FA 0F 27 00 00
95E75 = BA 0F 27 00 00
#Break HP Limit Party
95A1A = 81 FA 0F 27 00 00
95A22 = BA 0F 27 00 00
#Break Damage Limit
91137 = 81 C1 0F 27 00 00
#Limitless Magic Battle
86B0C = 90:2
#Limitless Magic Field
F3027 = 90:2
I can look like a noob asking this LOL but which paste you put these hext txt?

66
EDIT:
I made some more tests, and if I change the value to "1000" seems the HP.dll mod works although I get errors and the HP is not correctly displayed until I check the status:

Strange, its still working fine with me putting "100", but about the HP...
Yeah, the problem is: the developers did not programmed the HP number texture to acknowledge ten thousand and beyond, so it wont even show a hundred and thousand for not knowing the tens of thousands. Visually speaking, 11500 HP will show as 1500 in-battle and menu (until you check status). When you have 20085 HP it will show 85 HP. But its only visual, the game still recognize the rest of the value.

If only a Messiah show up for us and solve this visual problem...

67
I have found some codes that I didnt understand what they mean exactly, hoped someone could explain to me:

When an enemy was programmed to cast Thundaga, it had: targetadv(0, 200, 0, 231)
When an enemy was going to cast Remedy+: targetadv(0, 201, 0, 4)
When an enemy was about to physical attack: targetadv(0, 200, 0, 214)

I wanted to understand how the line targetadv works

EDIT:
I'm already posting this, so I'll take advantage and ask about some other commands.
The target(20x) has alot of values, from 200 (I take it targets self), 201 (any of the party members) and 204 (all party members). But then I saw 203 and 207 and don't know what it does, which makes me ask if there is a list showing the entire commands to use so I could learn.

EDIT2:
Someone sent me a PM showing me these
200 self
201 one target random
203 last opponent who attacked
204 all oponents
205 all allies
207 one ally
208 multiple hits

I've found a code list and there was this: 0x26 - targetadv(arg1, arg2, arg3, arg4), I really wanted to know what are each of these arguments, I guess the arg2 means the target? I don't know.

68
Gameplay / Re: [FFVIII-PCSteam] Testing out on monsters
« on: 2018-08-23 03:58:58 »
Thanks man, this will come in handy!!

69
Gameplay / Re: [FFVIII-PCSteam] Hit Count abilities?
« on: 2018-08-23 03:54:30 »
This is just a guess, but what makes an attack hit multiple times may be tied to its animation data. It makes sense, as Lion Heart, Wishing Star, etc. add extra hits at certain moments in their animations, rather than dumping every hit at the end or something. If that's the case, I wonder what is the point of the Hit Count info in the file. I could be wrong, though.
Its just like you said, its bound to the animation data. I ran some tests and it proved that way.

70
Gameplay / Re: [FFVIII-PCSteam] Enemy AI?
« on: 2018-08-23 03:52:24 »
I've got the info that Seifer and some few other enemies have some glitches about their AI, while with normal monsters it works normally.

71
Gameplay / Re: [FFVIII-PCSteam] Variables into monsters AI
« on: 2018-08-23 03:49:03 »
Yeah, I realised that putting new variables in normal monsters works perfectly, but in some specific ones it glitches like hell.
Just put 'self.varXX = 0' on Init tab (being XX a Hext value) using the beta Ifrit enemy editor program.
Well, now I've learned how to do it, thanks for the help guys.

72
So, as the title says, I wanted to modify the maximum amount of magic you get using Draw command. I know the max amount is 9, I really wanted to change it for a higher value.
Do I have to use hext for it? I really wanted to learn how to do it.

73
Gameplay / Re: [FFVIII-PCSteam] Variables into monsters AI
« on: 2018-08-18 03:50:40 »
Welp, i didnt had any progress on that but I could modify Bahamut's AI perfectly.
I can see the Text tab but if I change anything the program wont save, am I suppose to modify the text elsewhere?
How can I add more variables? Inserting new ones in Init tab?

74
Gameplay / Re: [FFVIII-PCSteam] Variables into monsters AI
« on: 2018-08-17 18:15:23 »
hum... What if we add a new variable in the gunblade on Init tab and activate it in Seifer's Turn tab? I'm gonna check it out.

75
Hey guys! I have a pretty complex question here (since my programmer friend couldnt solve this LOL)
I was messing around with the monsters AI using the new Ifrit mod, but after some attempts I couldnt create my own variables, it always ended up messing with the enemy's appearance, like bugged sprites over him.

Let me explain what happened:
I was trying to modify Seifer's AI, the second one in the Galbadia Garden fight.
My idea was for him to use REGEN the moment he shows his first dialogue during the fight, for that my friend Rick (the programmer) was trying to add a new var self.varE0 (since Seifer already uses DC DD DE and DF), but everytime he tried to add a new variable, Seifer's sprites got completely messed up, but the code was working perfectly fine! Oh, and not just adding new variables, putting the same existent ones also got the same problem, like changing the values of "self.varDC != 0" to something else.

Are we forgeting something? What we intended worked just fine, but the bugged sprites gets in the way of perfection.

Pages: 1 2 [3] 4 5