#nuvie@irc.freenode.net logs for 27 Jul 2003 (GMT)

Archive Today Yesterday Tomorrow
Nuvie homepage

[00:13:19] --> Yuv422 has joined #nuvie
[02:17:06] --> Kirben has joined #nuvie
[02:17:20] <Yuv422> hi Kirben
[03:09:46] <Kirben> Hi
[03:12:16] <Yuv422> there have been a few changes to the code base. Is Nuvie compiling ok on MinGW?
[03:21:58] <Kirben> Yes
[03:22:16] <Yuv422> :)
[03:40:02] <Yuv422> eeck, Lord British has turned into an ink well. ;)
[04:49:17] <Yuv422> be back later
[04:49:19] <-- Yuv422 has left IRC ("[BX] Mr. Peanut uses BitchX. Shouldn't you?")
[06:22:07] --> Yuv422 has joined #nuvie
[06:59:54] --> Kirben2 has joined #nuvie
[07:00:03] <-- Kirben has left IRC (Read error: 54 (Connection reset by peer))
[07:00:42] --- Kirben2 is now known as Kirben
[07:08:49] --> Kirben2 has joined #nuvie
[07:12:06] --> Kirben3 has joined #nuvie
[07:12:29] <-- Kirben2 has left IRC (Read error: 104 (Connection reset by peer))
[07:12:36] <-- Kirben has left IRC (Read error: 54 (Connection reset by peer))
[07:13:32] --- Kirben3 is now known as Kirben
[10:52:18] --> SB-X has joined #nuvie
[10:55:16] <SB-X> hello
[10:55:54] <SB-X> actors seem to try and walk into the wall now
[10:55:59] * SB-X boggles.
[11:00:27] --> wjp has joined #nuvie
[11:00:45] <wjp> hi
[11:02:59] <SB-X> hello
[11:44:48] <Yuv422> hey guys
[11:45:01] <Yuv422> I've got some more changes
[11:45:29] <Yuv422> took the actor check out of Map.
[11:47:28] <Yuv422> and put it into Actor::move()
[11:52:46] <Yuv422> I've subclassed Actor too. just got to commit the changes
[11:52:51] <SB-X> oh?
[11:52:53] <SB-X> okay
[11:53:04] <SB-X> it is the actor check in is_passable() that stuffed pathfinding
[11:53:10] <Yuv422> I'm moving the actor classes to an actors/ subdirectory too.
[11:53:20] <Yuv422> yeah
[11:53:28] <Yuv422> I'm not sure how you check the path
[11:53:39] <Yuv422> it seems to jam up while walking the path
[11:53:50] <Yuv422> if I check for actors in move()
[11:53:55] <SB-X> i know that the original doesnt care about actors, if an actor was in the path, the other actor would just stop when it hit it
[11:54:11] <Yuv422> hmm
[11:54:24] <SB-X> so an actor doesnt make the map non-passable
[11:54:32] <SB-X> because its so dynamic
[11:54:39] <Yuv422> yeah
[11:55:11] <Yuv422> but it would be nice to have for things like blocking doors etc
[11:55:29] <Yuv422> so you can't place an object on an actor etc.
[11:55:40] <SB-X> oh
[11:55:44] <SB-X> i did put a get_actor to Map
[11:55:49] <SB-X> don't know if thats apropriate
[11:55:52] <SB-X> but you can check that
[11:56:50] <SB-X> anything that needs to move but not of an actor is in the way can do (is_passable(xyz) && !get_actor(xyz))
[11:56:56] <SB-X> if an*
[11:57:14] <SB-X> but then, actors in the party need to be able to switch positions
[11:57:36] <Yuv422> they don't ever seem to swap tiles in my version.
[11:57:49] <SB-X> u6?
[11:57:56] <Yuv422> yeah
[11:58:06] <SB-X> they have to be blocked
[11:58:10] <Yuv422> I don't know if it's somthing I've changed
[11:58:28] <SB-X> go to a wall
[11:58:30] <SB-X> or tight corridor
[11:58:34] <SB-X> where there isnt any place for them to move
[11:58:38] <SB-X> and press space
[11:59:10] <SB-X> in the original u6 i mean
[12:00:06] <SB-X> switching places also implies that when checking if the move is valid, it allows for the other actor
[12:00:35] <SB-X> and sherry can move onto any space :)
[12:00:48] <SB-X> without moving the other actor
[12:01:51] <Yuv422> new changes are in
[12:02:13] <Yuv422> becareful if you've changed Actor* files on your local copy
[12:02:25] <Yuv422> they've be moved to actors/
[12:02:37] <SB-X> ok
[12:03:10] <SB-X> i have just tested to see if the actor check was messing up walking but i will delete the file before updating
[12:03:22] <Yuv422> schedule walking locked up when I was checking for actor blocking in Actor::move() any ideas?
[12:03:45] <Yuv422> I thought it would walk to the block then stop?
[12:04:13] <SB-X> it should as long as check_move() returned that that tile was passable
[12:04:30] <SB-X> i dont know why it didnt after i made some changes
[12:04:43] <SB-X> the people in the castle were walking into the wall
[12:05:11] <SB-X> ill update cvs
[12:05:41] <SB-X> what do the actor changes do?
[12:06:02] <SB-X> how do they allow for schedules?
[12:06:17] <SB-X> oh
[12:06:17] <SB-X> i see
[12:06:40] <SB-X> U6Actor :)
[12:06:41] <SB-X> great
[12:08:58] <Yuv422> party members need to catch up in some cases
[12:09:12] <Yuv422> they also seem to get stuck a bit too
[12:10:00] <SB-X> heh, yeah party members getting left behind was an issue as soon as it was put in
[12:10:08] <SB-X> i guess they should get two moves
[12:10:30] <SB-X> its more noticable when they block eachother
[12:10:40] <Yuv422> yeah
[12:10:56] <Yuv422> still it's looking good
[12:11:15] <Yuv422> LB turns into an ink well when he walks from bed to the throne. ;)
[12:11:16] <SB-X> one strange thing issue is when actors try to open doors
[12:11:27] <SB-X> oh
[12:11:30] <SB-X> sounds like chuckles
[12:11:38] <Yuv422> LB kept opening and shutting the door
[12:11:53] <SB-X> yeah they are doing that a lot
[12:11:58] <SB-X> the temp fix now is just to go offscreen
[12:12:18] <SB-X> sometimes they make it through but sometimes they just keep using the door :)
[12:12:18] <Yuv422> he also passes through the wrong part of the door
[12:12:40] <SB-X> i think what the problem is
[12:12:51] <SB-X> is that one tile of the door is considered a door
[12:12:53] <SB-X> and can be used
[12:12:56] <SB-X> but it cant be walked through
[12:14:06] <SB-X> but i know that is correct behavior so i dont know the permanent fix yet
[12:14:06] <Yuv422> yes
[12:14:17] <Yuv422> doors are evil
[12:14:27] <SB-X> we could just disable doors
[12:14:31] <SB-X> make them always open
[12:14:50] <SB-X> and maybe disable some walls while we are at it
[12:14:58] <Yuv422> ;)
[12:16:03] <Yuv422> we need to handle worktype actions upon walk completion too
[12:16:11] <Yuv422> like jumping into bed. etc
[12:16:52] <SB-X> yeah can't change to in-bed frame before you get to the bed
[12:16:57] <Yuv422> maybe we could have a callback method in the Actor subclasses
[12:17:16] <Yuv422> that gets called when the walk is finished
[12:18:02] <SB-X> do detect if the walk is finish you can set a walk_to_schedule flag or something
[12:18:20] <SB-X> call the method when you reach destination AND walk_to_schedule is true
[12:18:30] <Yuv422> sounds good
[12:18:43] <SB-X> unless there is a walking worktype
[12:18:51] <SB-X> but i think you already figured out there isnt
[12:18:52] <Yuv422> 0x84
[12:18:56] <SB-X> oh
[12:18:57] <SB-X> there is
[12:18:58] <SB-X> heh
[12:19:02] <Yuv422> :)
[12:19:03] <SB-X> walk-to-schedule?
[12:19:08] <Yuv422> yes
[12:19:48] <SB-X> thats even more simple then, the walk_to_schedule is the worktype
[12:19:59] <Yuv422> yes
[12:20:27] <Yuv422> there is going to be a fair bit going on in the U6 subclass
[12:20:44] <Yuv422> it needs to handle worktypes
[12:21:06] <Yuv422> and walk frames, sleep, death etc.
[12:22:56] <Yuv422> SB-X: do my changes compile ok for you?
[12:23:06] <SB-X> oops
[12:23:08] <SB-X> compiling now
[12:23:17] <Yuv422> ah k
[12:23:37] <SB-X> i think one of the first activities we will find useful is Loiter, so that npc's can walk around in an area and look alive
[12:23:44] <Yuv422> maybe we should take actor blocking from object number?
[12:23:53] <SB-X> and you already have some code to base that on in update() commented out
[12:23:54] <Yuv422> sounds good
[12:24:11] <Yuv422> and walk in a straight line
[12:24:17] <Yuv422> that should be fairly easy
[12:24:24] <SB-X> what does actor blocking from object number mean?
[12:24:54] <Yuv422> check the actor's object number to see if that object is blockable
[12:25:05] <Yuv422> so sherry would not be blockable
[12:25:17] <Yuv422> as her object (mouse) isn't blocking
[12:26:33] <SB-X> thats only to test other actors right?
[12:26:49] <SB-X> or can you use it to check the mouseholes
[12:26:59] <SB-X> i dont know how they worl
[12:27:01] <SB-X> work*
[12:27:16] <SB-X> it compiled!
[12:27:45] <SB-X> walking onto chairs doesnt change to sit frame now
[12:27:56] <SB-X> because it changes direction after the walk
[12:28:03] <SB-X> for player only
[12:28:18] <Yuv422> yeah I noticed that too
[12:28:48] <SB-X> actors should start twitching again too :)
[12:28:55] <Yuv422> :)
[12:29:25] <Yuv422> what are your plans for pathfinding?
[12:29:40] <Yuv422> so I don't interfear while working on schedules
[12:30:04] <SB-X> nothing that could be affected by that probably
[12:30:09] <SB-X> just want to fix the bugs
[12:30:22] <SB-X> sticky followers, doors
[12:30:30] <SB-X> and making it find distance goals better
[12:30:50] <SB-X> and ability to switch positions with party members
[12:31:19] <Yuv422> where did you get your A* huristics from?
[12:31:55] <SB-X> i might move the cost methods for that
[12:32:09] <SB-X> i got the algorthm from a text file i have
[12:32:13] <SB-X> and the cost method i made up
[12:32:51] <SB-X> and i looked at exult's a little bit
[12:33:06] <Yuv422> :) Ah the joys of opensource. ;)
[12:34:09] <SB-X> exult has a very different one so mostly what i could get from that was how they handles costs and blocked tiles
[12:34:43] <Yuv422> with the current party formation it seems like the actors are trying to keep a fixed distance from the avatar
[12:35:01] <SB-X> exult passes a pathfinder_client to the pathfinding methods
[12:35:06] <SB-X> yeah
[12:35:13] <Yuv422> So they jump away when the avatar comes close
[12:35:19] <SB-X> they try to go into the formation
[12:35:27] <SB-X> but if the formation is blocked they move toward the avatar
[12:35:27] <Yuv422> I think the original let the avatar walk up to the party members
[12:35:44] <Yuv422> when changing direction
[12:35:56] <SB-X> i think its just the way actor-blocking is handled
[12:36:02] <SB-X> if you move into the formation
[12:36:07] <SB-X> the followers dont have anywhere to go
[12:36:14] <SB-X> because they wont switch with you
[12:36:24] <SB-X> but if you Pass, they will go into the formation
[12:36:47] <Yuv422> they should switch as that move call is forced. :)
[12:37:11] <Yuv422> it doesn't check for an actor when called in that way
[12:37:52] <SB-X> right now in nuvie if you are facing north and move south only dupre will move
[12:38:01] <SB-X> and if you Pass everyone but Iolo goes into formation
[12:38:12] <SB-X> Iolo keeps trying to move toward the avatar
[12:39:28] <SB-X> one thing thats still close to accurate is if you move into a doorway
[12:39:31] <SB-X> and then move one space out of it
[12:39:52] <SB-X> dupre and shamino will move back and forth from the door
[12:39:57] <SB-X> thats normal
[12:40:21] <SB-X> but other things arent because when i was testing it actors could move over eachother freely :)
[12:40:37] <SB-X> so it will need more testing and changes definately
[12:40:41] <Yuv422> I think it's looking good
[12:41:58] <SB-X> im also going to change pathfinding so that they walk in straight lines
[12:42:14] <SB-X> instead of taking the fastest path
[12:42:25] <SB-X> which will be closer to u6 behavior
[12:42:30] <Yuv422> cool
[12:42:51] <SB-X> does your savegame still have the gargoyles?
[12:42:55] <Yuv422> oh one other thing
[12:43:07] <SB-X> i still have them standing around with nothing to do in the throne room :)
[12:43:24] <Yuv422> sherry's conversation seems to lockup when she askes if you have cheese
[12:43:34] <Yuv422> after you say name
[12:43:42] <SB-X> do you have to give any response?
[12:43:50] <Yuv422> y/n
[12:43:55] <SB-X> can you?
[12:44:03] <Yuv422> but you just get a spinning anhk
[12:44:25] * SB-X cries.
[12:44:32] <SB-X> i think i broke it when i tried to fix it last
[12:44:44] <SB-X> it works in linux but i tested in windows yesterday and it didnt
[12:45:23] <Yuv422> :(
[12:45:40] * Yuv422 tests column formation :)
[12:45:57] <Yuv422> nice!
[12:46:35] <SB-X> heh
[12:46:38] <SB-X> i have to agree
[12:47:01] <SB-X> it probably has issues too but it is a nice formation
[12:47:17] <Yuv422> early days yet.
[12:47:31] <SB-X> i just added those formations in for fun
[12:47:36] <SB-X> but the others arent implemented yet
[12:47:40] <Yuv422> well I'm off to bed now
[12:47:45] <SB-X> it shouldnt be hard because the positions are just relative from avatar
[12:47:47] <SB-X> ok
[12:47:59] <SB-X> bye
[12:48:08] * SB-X looks into conversation bug.
[12:48:16] <Yuv422> cya
[12:48:24] <-- Yuv422 has left IRC ("[BX] If idiots could fly, IRC would be an airport")
[12:51:29] <-- SB-X has left IRC ("brb")
[14:50:21] --> SB-X has joined #nuvie
[16:00:48] <-- Kirben has left IRC ("System Meltdown")
[22:33:59] <-- wjp has left IRC ("Zzzz...")