Page 6 of 14

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Fri Jul 20, 2012 12:23 pm
by botique
For those attempting Jamie Rayer's game, you will not be able to see the matrix if you are using Lisa's model files.

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Sat Jul 21, 2012 2:26 am
by Beni
120 point...1 water element :cry:

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Sat Jul 21, 2012 7:14 am
by silinky
i try to make myself a wp for the weaving machine but i cannot find out how to identify the matrix color. any hint for it?

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Sat Jul 21, 2012 10:46 am
by rock5
That's already been looked for with no luck. There is no matrix object and it doesn't seem to be an offset of the machine itself.

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Sat Jul 21, 2012 1:16 pm
by botique
What if we tell to the bot manually the color of the matrix?

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Sat Jul 21, 2012 2:06 pm
by silinky
well, thx for the answer, i already hate this event, screw the pet :D
all kinds of moronic stuff to do, instead of playing the game.
back to my fighting bot i guess.

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Sat Jul 21, 2012 8:05 pm
by Hidden
Thanks Dx and Lisa works well...... i hate timed events :( not enough hours in the day and now its only once an hour not twice.

Its a pain as i still need a Zodic pet, havent received a pet crystal yet.... and its like 2 months till they change events.

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 8:40 pm
by BillDoorNZ
ok...been working on the weaving machine....an interesting one that one.

will attach what I have to date...please note that this the first version! It will pick the correct box when:

1) There are no errors
2) There is a Matrix error
3) There is a Message error
4) There is both a Matrix and Message error

I'm currently working on the Message Matrix error combination. Colors are based off the Weaving Machine buffs

Code: Select all

		BUFFS_RED = 622962;
		BUFFS_WHITE = 622963;
		BUFFS_YELLOW = 622964;
The problem is that the CPawn:updateBuffs function doesn't get the buff as it has no Name. I added a function to get those and that seems to work correctly.

Sometimes the order of the system and warning messages is invalid, so it may pay to check each twice...not sure yet...needs more testing...have updated to only get error text if there is a message error :) which seems to have resolved the issue.

Game now completes fully with 21 or 22 (think it was 21) successes and gets goddess package.

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 8:47 pm
by BillDoorNZ
only took 60 transport runes to test and debug!!! lol

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 9:51 pm
by lisa

Code: Select all

			elseif (obj.Id == id_WeavingMachine) then
				printf(obj.Hex.."\n");
errors out saying Hex a nil value.

just for future reference you can use

Code: Select all

print(obj.Hex)
and it will do a next line at end by default without needing to add one in =)

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 9:54 pm
by BillDoorNZ
doh...left that code in there did I!!! :)

one sec and will update my post

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 9:55 pm
by BillDoorNZ
k, updated...was using it to see what mem locations were changing when the color's were there...

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 10:14 pm
by lisa
i commented out that line and worked fine, the score stopped at 21, not sure why though. It must have clicked 6 or 7 things after it got 21 but it just stayed at 21. Maybe a max score?

Also not sure why you have a few waypoints to walk away and back again?

BTW you did an awesome job on it =)

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 10:15 pm
by BillDoorNZ
thx! :)

heh...those are a leftover from a previous version and some stuff of mine.

I'll remove those tomorrow and also update the 'center' spot so its a range of spots as its very obviously a bot when you watch it. Will add some longer pauses after the box click too and make them randomised so as to not look so botty :)

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 10:19 pm
by lisa
I didn't think it looked botty at all, going to the center is logical even when playing, I would however make it face the weaving machine at that spot though as looking other direction doesn't look right lol

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 10:22 pm
by BillDoorNZ
lol...true....dunno how to do that as yet...will have to look it up :)

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 10:24 pm
by BillDoorNZ
hmm...something like:

Code: Select all

			local angle = math.atan2(target.Z - self.Z, target.X - self.X);
			local yangle = math.atan2(target.Y - self.Y, ((target.X - self.X)^2 + (target.Z - self.Z)^2)^.5 );
			self:faceDirection(angle, yangle);
??

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Mon Jul 23, 2012 10:27 pm
by lisa
you can get rid of the waypoints altogether and just add a player:sleep() as the last line in the onload.


since the machine never moves you could put in the actual coords of it, or you can do a memory scan for the object and get it's coords that way.

Code: Select all

player:udpdate()
local angle = math.atan2(machine.Z - player.Z, machine.X - player.X);
camera:setRotation(angle);
or yeah you can use that code you posted if you worry about y values but since you only care which direction char faces the Y shouldn't matter =)

Actually on second thought, when you click the middle you turn to click then turn back and if you had it face machine it would turn a third time, not ideal.

I changed the end of the onload to this

Code: Select all

	player:target_NPC(jamie_id);
	yrest(2000)
	if inventory:itemTotalCount("Transport Rune") then
		ChoiceOptionByName("transport");	
		loadPaths("weavingmachine")
	else
		player:sleep()
	end
so if you have transport runes it will use them to redo the event, it will error out though if someone else starts the event before you do, would need a check after clicking machine for if it is in use or not.

Code: Select all

		local function findClosest(_obj)
			if _obj == nil then player:sleep() end
that will probably do the trick because _obj is nil if someone else is doing the event when you click machine.

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Tue Jul 24, 2012 5:58 am
by BillDoorNZ
lisa wrote:

Code: Select all

			elseif (obj.Id == id_WeavingMachine) then
				printf(obj.Hex.."\n");
errors out saying Hex a nil value.

just for future reference you can use

Code: Select all

print(obj.Hex)
and it will do a next line at end by default without needing to add one in =)
nice...the Hex property was just a dump of the hex values from the object pointer to the last known offset (lootable).

Code: Select all

		for i=self.Address,self.Address + addresses.pawnLootable_offset+20,1 do
			local b = debugAssert(memoryReadUByte(proc, i)) or 0;
			if ((i % 4)==0) then s = s.."  "; end;
			s = sprintf("%s %02X", s, b);
		end;
		self.Hex = s;

Re: Rock5's Constellation (Zodiac) Pet scripts

Posted: Tue Jul 24, 2012 11:47 am
by Hidden
OMG Bill you are a legend :D

I dunno about looking "bot like" even manually I look like a bot. I just stand on the middle one and after clicking one of the sides use the back key to walk back to the centre.