Exult Logo
 
Home | Download | Documentation | FAQ | Studio | Screen Shots
Development | Discussion | About Us | Letters | History | Links
 
Exult Discussion
Before posting, make sure you've read the FAQ and searched the message board for previous discussions. When reporting problems/bugs, please include details about your setup (Exult version, OS, sound and video cards).

 New Topic  |  Go to Top  |  Go to Topic  |  Search  |  Log In   Newer Topic  |  Older Topic 
 Combat
Author: agentorangeguy 
Date:   01-22-17 18:37

From what I could tell looking at the exult code it's pretty advanced stuff... but I'm wondering if it COULD be fixed to where the distance between targets isn't such a mess? It seems like in the original, they would move around more, such as moving back a few tiles (maybe the max range of the melee weapon?) and striking again. It looked like the various combat types were implemented as far as I could tell but whether or not they work I have no clue.

Additionally, if one were to make individual scripts for all party members on how they behave in combat, would it be possible? Such as if someone was assigned to "Flank", if it would be possible for that party member's script to calculate their distance from the Avatar during combat every so often and actually "flank" them such as it did in U6 engine, relocating to that tile and attacking the nearest enemy?

It's time we take a good look at combat... especially since there have been several new mod work springing up and the forums are active again! :D

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Gotcha! (---.adsl.xs4all.nl)
Date:   01-22-17 19:02

It'd be great if this would be looked into.
This and the broken npc schedules (npc's not setting tables, not using shutters/streetlights etc.) are the only two things keeping Exult away from near-perfection. :)

Reply To This Message
 
 Re: Combat
Author: KC via VAX (---.sub-174-192-30.myvzw.com)
Date:   01-23-17 02:41

Agreed, these areas need love. It looks silly when a bowman walks up to his target.

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   01-23-17 21:26

Yeah, it's almost like they shoot once then run up to the target like they are carrying a melee weapon and shoot them at point blank range. I'm wondering if a distance check is off somehow?

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   02-03-17 14:26

If someone wanted to do a minor fix to ranged combat, would it be possible to add code to a ranged weapon to have the user check proper ranges from their target or would it not override the main combat functions?

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   02-03-17 16:47

It would have to be done in the Exult engine itself, and should affect all ranged weapons. For example, if Luther has a halberd and Templar has a sword, Luther should step back so Templar can't hit him.

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   02-08-17 16:53

It's depressing combat is the red headed stepchild of Exult lol. It's downright awful and is detrimental to gameplay... is anyone still actively looking into it?

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: TDI (---.hsi8.kabel-badenwuerttembe)
Date:   02-08-17 21:57

Yeah, NPC schedules and combat are what is holding Exult back. I really enjoy messing around with Exult for the mods and extended features, but whenever I want to experience the world of Ultima 7 in its fantastic glory, I boot up the original in Dosbox.

It's just a joy to watch Sentri shoot a few arrows at his archery target and then pull out his sword to have a go at the training dummy. In Exult he weirdly walks back and forth between the two and gives each a single whack of his sword.
And of course the crazy intricate waiter schedules where they walk back and forth between kitchen and clients, ask them what they want to have and place food on the plates that actually gets eaten. Ultima 7 might be the only game in the world that has this kind of detail, much of which is still quite wonky in Exult.
Some of the schedules are already quite good in Exult, such as baking or tailoring, but they don't look as fluid or natural as in the original. For example, the tailor in Exult will arrange clothing items in a pattern starting from the very top left of a table, which looks very unnatural. In the original the NPC simply puts the clothes on the table nearby, next to a position from where she is standing.

Also the combat system of the original might look deceptively simple and chaotic at first glance, but is actually quite complex and smart about a few things. Characters with high agility/combat will actually strike an enemy, take a few steps back to avoid getting hit by the enemy on his next strike, and then strike again when the enemy moves within range. You can observe agile characters wear down stronger opponents like this, using their superior mobility. And still the stronger, slower opponent is not at complete disadvantage. Sometimes the timing will be a bit off and the stronger guy land a hit, possibly taking out the agile fighter. Great stuff.
Kinda like that fight between the Mountain and Oberyn in Game of Thrones. :D

I'm really looking forward to the day I can drop Dosbox and boot up Exult with all its modded glory to serve my nostalgic needs and then some, but that day has not yet come.

Reply To This Message
 
 Re: Combat
Author: TDI (---.hsi8.kabel-badenwuerttembe)
Date:   02-08-17 22:13

Of course one thing Exult could certainly improve on the original is to stop projectiles from hitting your own party members in their backs, making ranged weapons a little less self destructive and a little more feasible.
Everybody knows the most dangerous enemy in U7 is a triple-crossbow armed Iolo.

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   02-08-17 22:28

I think, while Exult needs a lot of combat work, hitting your own party members in the back has been eliminated (or it was at one point).
Sadly no one wants to take on combat :(

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   02-16-17 15:17

I believe in the original if you used magic arrows/bolts they wouldn't hit you in the back.

If I knew what I was doing, I'd totally take a look at combat and fix it. It's been a long neglected area of Exult.

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Alexander (---.ri.ri.cox.net)
Date:   02-17-17 15:32

I also noticed the List Field has some issues.

A lot of the time when training, my companions will attack the wrong person - going after Templar, for example, who doesn't even train people, when they're supposed to be attacking Caladin or Shazzanna.

A couple times they'll even defeat the (wrong) person they're attacking, who will run away yelling "I give up!", only for them to keep attacking the fleeing, wrong opponent - meanwhile their real trainer is beating on them with a sword or shooting them full of arrows. I guess mercy isn't one of the eight Virtues.

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   02-21-17 18:20

I was digging around in the combat.cc file, and found this:

/*
 *  Begin a strike at the opponent.
 */

void Combat_schedule::start_strike(
) {
	Game_object *opponent = npc->get_target();
	bool check_lof = !no_blocking;
	// Get difference in lift.
	Weapon_info *winf = weapon_shape >= 0 ?
	                    ShapeID::get_info(weapon_shape).get_weapon_info() : 0;
	int dist = npc->distance(opponent);
	int reach;
	if (!winf) {
		Monster_info *minf = npc->get_info().get_monster_info();
		reach = minf ? minf->get_reach() : Monster_info::get_default()->get_reach();
	} else
		reach = winf->get_range();
	bool ranged = not_in_melee_range(winf, dist, reach);
	// Out of range?
	if (!spellbook && npc->get_effective_range(winf, reach) < dist) {
		state = approach;
		approach_foe();     // Get a path.
		return;
	} else if (spellbook || ranged) {
		bool weapon_dead = false;
		if (spellbook)
			weapon_dead = !spellbook->can_do_spell(npc);
		else if (winf) {
			// See if we can fire spell/projectile.
			Game_object *ammo = 0;
			int need_ammo = npc->get_weapon_ammo(weapon_shape,
			                                     winf->get_ammo_consumed(), winf->get_projectile(),
			                                     ranged, &ammo);
			if (need_ammo && !ammo && !npc->ready_ammo())
				weapon_dead = true;
		}
		if (weapon_dead) {
			// Out of ammo/reagents/charges.
			if (npc->get_schedule_type() != Schedule::duel) {
				// Look in pack for ammo.
				if (Swap_weapons(npc))
					Combat_schedule::set_weapon();
				else
					set_hand_to_hand();
			}
			if (!npc->get_info().has_strange_movement())
				npc->change_frame(npc->get_dir_framenum(
				                      Actor::standing));
			state = approach;
			npc->set_target(0);
			npc->start(200, 500);
			return;
		}
		state = fire;       // Clear to go.
	} else {
		check_lof = (reach > 1);
		state = strike;
	}
	// At this point, we're within range, with state set.
	if (check_lof &&
	        !Fast_pathfinder_client::is_straight_path(npc, opponent)) {
		state = approach;
		approach_foe(true); // Try to get adjacent.
		return;
	}
	if (!started_battle)
		start_battle(); // Play music if first time.
	// Some battle cries. Guessing at where to do it, and how often.
	if (yelled && !(rand() % 20)) {
		if (npc->is_goblin())
			npc->say(first_goblin_taunt, last_goblin_taunt);
		else if (can_yell)
			npc->say(first_taunt, last_taunt);
	}
	if (combat_trace) {
		cout << npc->get_name() << " attacks " << opponent->get_name() << endl;
	}
	int dir = npc->get_direction(opponent);
	signed char frames[12];     // Get frames to show.
	int cnt = npc->get_attack_frames(weapon_shape, ranged, dir, frames);
	if (cnt)
		npc->set_action(new Frames_actor_action(frames, cnt, gwin->get_std_delay()));
	npc->start();           // Get back into time queue.
	int sfx = -1;           // Play sfx.
	if (winf)
		sfx = winf->get_sfx();
	if (sfx < 0 || !winf) {
		Monster_info *minf = ShapeID::get_info(
		                         npc->get_shapenum()).get_monster_info();
		if (minf)
			sfx = minf->get_hitsfx();
	}
	if (sfx >= 0) {
		int delay = ranged ? cnt : cnt / 2;
		new Object_sfx(npc, sfx, delay * gwin->get_std_delay());
	}
	dex_points -= dex_to_attack;
}



From what I gather, that determines distance from the target? Is there something missing from this to make them swarm the target? Please Exult gurus, combat must be fixed... it needs some much needed love! :D

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   02-21-17 20:34

That's why it doesn't include backing up when you have more melee range than your opponent.

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   02-27-17 02:22

Keep the dream alive! Combat should be fixed so all the townspeople will rejoice!

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: KC via Telnet (---.sub-174-192-14.myvzw.com)
Date:   02-27-17 02:27

Hopefully some of the Dragons will check us out and help here.

Reply To This Message
 
 Re: Combat
Author: DrCode (---.mentorg.com)
Date:   02-27-17 22:51

I'm getting re-acquainted with the Exult code after a few years' break, starting with the waiter schedule. So maybe combat too someday soon.

Reply To This Message
 
 Re: Combat
Author: KC via Telnet (---.sub-174-192-14.myvzw.com)
Date:   02-28-17 00:21

Is there any way we can help? Like describe the DOS engine's behavior in detail?

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   02-28-17 13:03

Cool! Yes, anything we can do to help or test things let us know!

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-01-17 00:16

Yes, thanks! Right now I'm working on the 'waiter' schedule, and seeing lots of flaws. Recent checkins support placing the right plate (instead of the oversized one), and getting everyone served.

Other things to do:

1. Give plates first, then come back with food.
2. Use the right 'prep' table in the kitchen.
3. Clear away food and plates when the customers have gone.
4. Use the stove and prep table to 'cook'.
5. Move bottles around the various tables.
6. Serve ale to the customers?

So I'm happy to get suggestions for anything I've missed (or for anything I mess up in the process).

Reply To This Message
 
 Re: Combat
Author: KC via Telnet (---.sub-174-192-31.myvzw.com)
Date:   03-01-17 00:54

Are the plates used based on the diner's table? So wooden plates on wooden tables, etc? That could allow me to set the Silver Seed NPCs to sit and be served with the Ophidian yellowy plates.

I'm excited to see you back making this better as the mod work increases.

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-01-17 13:17

Now that you mention it, it would be kind of cool to see the servers serve different ales to customers :D That seems to be what they used to do, randomly go to the cauldron, picking up and moving kitchen items and bottles, serving, cleaning up, things like that.

Very cool to see someone back and working on Exult schedules! (and combat someday! :D )

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-01-17 23:55

From what I saw browsing in Dosbox, the plates were randomly white or wood. I'm pretty sure I saw different ones used at the same table. That's how I have it now in Exult. But I could change that to match the tables.

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-02-17 00:30

I think matching tables would be a nice touch, otoh people might complain about non-random then. Personally I kind of like the matching tables idea.

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 04:17

Watching this a bit in SI with SS installed, and just saw Lucilla put a skull-shaped cup on the circular table in the SW of the room.

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 04:19

The small plates look a little silly when foods that are larger are placed on top of them.

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 04:24

And the intended shimmering wine bottle was dropped by Lucilla in the DOS version:

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 04:25

Pardon, intended to be a plot-item-only shimmering wine bottle. That was what was supposed to have been used in the storm sequence, rather than plain old ice wine.

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 04:28

Here's both wooden and white plates being used:

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 04:34

Petra does the same:

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 05:39

Looking at the WAITER activity in both BG and SI, they are identical, as far as I can tell. This means they have the same behaviors:
Using different colored plates, both the small white and small wooden ones.
Collecting any plate shapes put down if there are no diners, or diners not sitting at that spot.
Putting down jars, cups, and bottles, and moving them around if no diners are present.
Standing at the empty caldron, but never filling it or emptying it.

Even preparing food in the dining area:


This will largely depend on how much complication DrCode is willing to do, of course, but I think there's a few ways to do this.

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 06:33

Wikipedia states the medieval meals were larger during midday than the smaller suppers in the evening. I wonder if we can use that to make the game more realistic?

To break this down a bit, a Waiter should have many subroutines:

A) Check for customers.
B) Prepare food.
C) Prepare drinks.
D) Place plates for customers.
E) Place utensils for customers (new!)
F) Place cups for customers. (sooner)
G) Place food for customers.
H) Place drinks for customers.
I) Check on customers.
J) Respond to calls for "Waiter!"
K) Check for dirty plates and collect everything.

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 06:40

Here's the general shapes, minus bottles, cups, and utensils:

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 06:56

DrCode, can you speculate as to why the business activities were not done via Usecode but in the engine itself?

Reply To This Message
 
 Re: Combat
Author: KC via Telnet (---.sub-174-192-31.myvzw.com)
Date:   03-02-17 11:14

I've done some code that will use the larger plates on larger tables, and smaller plates on smaller tables. It also use the right plate for the area based on the chair colors (frames). This seems to be what the original designers intended but did not implement.

It's in Usecode C but readable and hopefully convertible.

Reply To This Message
 
 Re: Combat
Author: Gotcha (---.adsl.xs4all.nl)
Date:   03-02-17 11:39

Thanks for trying to tackle this, DrCode. :)

About the plates usage, if it were me I'd go for one type of plate per establishment.
Brown/Wooden plates for less classy places, White/Porcelain plates for fancy taverns and Gold plates for LB/Filbercio.

Britain: Big wealthy city; white plates
Britain, LB's Castle: gold plates (tax money well spent)
Buccaneer's Den: Rough, dirty place; Wooden plates
Cove: I don't think they care about shiny porcelain, judging from the nearby lake, also, they're not a rich town; wooden plates
Jhelom: Rough, dirty place; Wooden plates (keeps all these fighters from breaking the porcelain)
Minoc: Wealthy place, craftsmen; white porcelain plates
Moonglow: Farmers don't care about porcelain; wooden plates
New Magincia: Like Paws, a poor place; wooden plates
Paws: Poor place; wooden plates
Serpent's Hold: Warriors don't care about porcelain, besides their roughness would break them; wooden plates
Terfin: I'd go with wooden
Trinsic: A well-doing upper class town; white plates
Vesper: Rough mining town; they're better off with unbreakable wooden plates
Yew: Abbey; wooden plates

Monitor: crude warrior men who possibly don't even remove their gauntless when scooping out their plates, bunch of pigs; wooden plates
Sleeping Bull Inn: A simple place, lots of wood; wooden plates
Fawn: No-brainer; white porcelain plates to match the whiteness of the city.
Moonshade, Blue Boar: a well-doing establishment in a city filled with *cough*refined*cough* individuals; white plates
Moonshade, Several mages' automatons: white plates
Moonshade, Filbercio's place: gold plates

Just my two gold coins.

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 12:38

DrCode, I don't have your email. Send me one and I'll send my code. :D

Gotcha, gold plates are only in SI, and only used in Ophidian areas. But I think my method will do most of what you want.

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-02-17 12:39

@Gotcha, I think this would be the wrong kind of hard coding.
Hard coding plate style to correspond to chair style is a general thing that will benefit all games and mods.
Doing it per location would add a lot of code and hardcoding things that shouldn't be. That's something a mod should do and not Exult on its own. IMO

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-02-17 12:47

I like the idea of the plates being used based on what type of chairs the establishment has. I was also looking around in BG and SI in Dosbox, seems like there was a random timer or something from the time a food item would be placed on the plate, then when they'd finish it and eat with a "Burp!" or something like that.

I was looking at the changes in the latest Exult build and it seemed to crash on me randomly in the taverns but not quite sure why yet.

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-02-17 13:04

Ooh random crashes... might have time to investigate tomorrow. Possible reason, as in the desk schedule, Jeff might have forgotten to clean up and the waitress or customer might have too much in his hand and tries to add another thing...

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 14:48

Code is over to you, Dominus.

Basically, it has logic for:
Large tables get large plates, small tables get small plates.
Nice tables get nice plates, wooden tables get wooden plates.
If the table is nice but the chair is plain wood, nice plates are used.
Only if the table and chair are plain unpolished wood are wood plates used.

Golden seats (used in the Silver Seed dining room, Skullcrusher, etc) at large tables get the large yellow+red plate, smaller tables would get smaller brass plates.

Then any non-plain-wood chair would get a fancy plate, so the red, blue, black, burnt red, and white chairs would get fancy plates. White chairs would get the off-white plates in the MageLord's hall and in White Dragon Castle.

Then if the chair is plain wood, to fit canon I had to make per-table-frame if statements. In other words, how the table looks. Ones with a table cloth or polished top, as in Fawn's inn, would still get small white plates. Ones placed on a banquet table, as on Monk Isle, would consistently get large plates. Only raw unpolished wood tables with wood chairs would get wooden plates. If time allows I'll setup the rectangular wood plates for rectangular wooden tables, and use the circular wooden plates on circular tables.

This would also cause the plates used in Lord British's tiny banquet hall to get large plates, which would make sense given the size of the table. The dining hall in Minoc would get circular wooden plates instead of small rectangular ones*. Not sure about Cove, but that should be it for non-canon changes.

*I think the DOS engine will use any plate that is already placed, but also will collect them, so they don't last if pre-set.

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 14:50

This would also allow me to set the Silver Seed NPCs to Eat_at_Inn and be served canon plates and such, so I think that's a positive addition.

WAITER schedule also needs to not allow barks if the NPC is mute, but there's no flag for that? (Maybe we need to add one in the 40+ range.)

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-02-17 15:32

can you control barks via custom usecode? Then it could be done for mods. Adding it in plain Exult is hardcoding stuff but you could file feature request for this. Maybe Marzo would add this.

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-02-17 16:38

Barks generally are done in Usecode, yes. But there's some things that you can't control via Usecode, and business activity barks are one of them.

You also cannot set/get/control flags for:
Mute - Silent monks, brass automatons shouldn't bark at all.
Swim - Ran into this with my mod, just needed a quick walk across a few tiles. Might be do-able via clear tiles, like done near Erstam's cheat area?
Fly - Same as Swim.
Ethereal - Same.

These are all low-priority items above.

I wonder if setting the Intelligence to under 2 would work for Mute? That's a check in one of the SI Utility Usecode pieces, anyway.

Reply To This Message
 
 Re: Combat
Author: Gotcha (---.adsl.xs4all.nl)
Date:   03-02-17 17:07

@Knight Captain, Dominus: You're the experts. ;)
Whichever way it's going to be done, I am already so happy it's being looked into.
Thanks to all involved. :)

Reply To This Message
 
 Re: Combat
Author: DrCode (---.mentorg.com)
Date:   03-02-17 21:41

I like Knight's idea for setting the plates.

As to why schedules were hard-coded instead of done in usecode, we can only guess. Maybe it was too slow, thought that probably wouldn't be a problem now.

Dominus: Not surprised if I broke something. Hopefully we'll get an example I can look at. My only testing was with the inn outside the Mountains of Freedom in SI, and the one at the south of Trinsic in BG.

For the waiter schedule, I still need to do:

Clean up after customers leave.
Place bottles and pots on the tables.
Mess around in the kitchen.

I also noticed that the innkeeper in SI doesn't approach the Avatar. This looks like an enhancement in SI over BG (where I don't think they ever did, but need to check).

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-03-17 09:03

ok, Exult always crashes for me with a new game in Monitor's Pub after one or two minutes. Created a bug report with some backtrace.

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-03-17 20:44

Thanks! Easy fix.

Still have lots to do, but I'm happy with how it's turning out. The waiter now goes around and takes orders, then goes to the kitchen (if we find it, which is sometimes a problem), comes back, and gives them all their food. She then waits at a counter for a bit (if there is a counter), and repeats the process.

Problems I've seen occur if the kitchen is too far away. And sometimes if the waiter goes outside to turn a light on or off, things go bad. Trouble is, it's hard to duplicate this problem.

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-03-17 23:51

Maybe the street maintenance schedule needs to guide npcs back to their starting point if it kicks in during a schedule.

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-04-17 00:32

That's probably the solution.

Reply To This Message
 
 Re: Combat
Author: Dale 
Date:   03-04-17 05:11

Reading this with excitement and wanted to share that important information. You people are really appreciated.

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-04-17 17:07

I've let Exult running for some hours while standing around the Monitor pub. No crash and service was always under way when I had a chance to look at it ;)

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: Francois424 
Date:   03-04-17 18:41

As with ale, I really appreciate the (free) work you guys are putting into exult. Thing is if we fix service/combat with weapon ranges all these fixes will find their way into U7 proper as well and not only SI... So cheers !


_________
Enlightenment Dragon

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-04-17 21:24

DrCode, when/if you pursue KnightCaptains idea for pairing types of plates with tables, could you extend shape_info.txt with this? This would mean less hardcoding in Exult and easier to mod or useable for custom games.

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-04-17 23:19

This might be the first time I've looked at that file. Yes, would make sense to have a 'plates' section. The 'prep tables' and stoves should also probably go there.

Reply To This Message
 
 Re: Combat
Author: KC via Telnet (---.sub-174-192-27.myvzw.com)
Date:   03-05-17 01:01

Dominus, please send him the files I sent you. I think they will help.

My si_shapes.uc file is now 1000+ lines.

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-05-17 14:58

I don't think I mentioned the details about the crash I had. The one in SI may have been a fluke but in BG it crashed in the blue boar in an unmodded game. I did cheat teleport there though if that matters. Thank you guys for getting back into it! Very exciting!

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: DrCode (---.mentorg.com)
Date:   03-06-17 22:27

The crash Dominus reported on March 3 was fixed later that day, so try a more recent version. Or maybe I broke something else...

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-07-17 19:34

Ok cool, will try the latest version when I get home!

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: KC via Telnet (---.sub-174-192-2.myvzw.com)
Date:   03-08-17 08:29

While we're piling on DrCode, can we get competing PACE NPCs to turn around rather than endlessly Bark at each other?

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-08-17 13:11

Ok got a chance to test it in BG and noticed a few things:

I tested it in the blue boar, it seems that the barkeeps would put extra food on their plate even if the last piece of food was still there (plopping down a dessert when they haven't finished their egg yet, and so on). That seemed to be the only thing I saw show up. Otherwise, it looks great and functioning pretty well! It was cool to see them start up the stove and use the cauldrons (even if they used the sparkly frame sometimes haha). maybe have them "use" kitchen items and place them randomly on the prep tables? I saw they used the "useing something" frame but didn't place anything, not sure if that was how it was intended or just not implemented yet?

Awesome work guys!

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Gotcha (---.adsl.xs4all.nl)
Date:   03-08-17 16:19

Oh, I hate those restaurants, where they just keep serving you course after course when you're not even finished with your current course. It's like they want you to hurry up, pay up and scram.
Et tu, Britannia?

Silliness aside, I'm so happy with you guys. Thank you. :)

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-08-17 17:49

Thanks for the report! I'll look for them putting food down when there's still some there, as that's not supposed to happen.

And I need to have them put items on the prep tables as they 'cook'. Currently they only pick them up, and then put them by the customers. Maybe later today.

The last major thing will be to have them clean up the tables afterwards.

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-08-17 22:36

More fiddling with the schedule, so the waiter will sometimes put food on the prep tables. Didn't see any cases of multiple food items being placed before customers, though.

Reply To This Message
 
 Re: Combat
Author: KC via Telnet (---.sub-174-199-28.myvzw.com)
Date:   03-09-17 01:57

When testing Usecode changes I have run into situations where things remain broken in saved games but work fine in new ones. YMMV.

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-09-17 04:11

Please remain on topic, even if that changed to waiter schedule ;)

And yes, there have been cases that made us ask people to use a new game.

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-11-17 00:47

Waiters clean up plates and leftover food now. I think I'm about done, other than fixing problems you may find, and using Knight Captain's idea for setting plate shapes.

Although one more idea: When the waiter is standing at the counter after serving everyone, and one of the customers yells for more food or "Ale!", it might be cool if the waiter responds by turning towards him, and then walking there. Might not be that hard...

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-14-17 18:35

DrCode - what's next on the agenda, combat or another schedule?

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-14-17 19:29

I'll look at combat next, since that seems to get the most criticism.

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-15-17 13:12

Yaaayyyyyy! It's definitely in need of some love. The issues I've noticed is that range checks are out of whack I guess... they stand too close to each other even with ranged weaponry, where in the original they'd at least step back and then hit. Like a guy using a halberd would hit then maybe step back to the max range before swinging again, if possible. From memory at least, it seemed the ranged weaponry users like bows, crossbows and such would attempt to keep away from other npcs while attacking if possible.

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: DrCode (---.hsd1.or.comcast.net)
Date:   03-15-17 17:00

Yes, getting each NPC to back away to his weapon's maximum range would be a good first step.

Reply To This Message
 
 Re: Combat
Author: Dominus 
Date:   03-15-17 21:53

And getting the original combat settings from the combat gump saved, too ;)

--
Read the documentation and the FAQ are your friends! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-15-17 23:41

totally! In the original it seemed to do something I guess... flank would attempt to attack the enemy from the side... defend... not sure what that did. In theory it is supposed to make them concentrate on defense more than offense, taking less damage?

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-16-17 21:57

Was Defend intended to use the Protect halo button setting to determine who to protect? Perhaps to either stand in the way of ranged attacks, and attack the strongest opponent targeting the protected party member?

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-17-17 16:22

Defend had a circle with a horizontal line above it where you'd defend attacks against yourself, then there was a "defend others" where the big circle would defend a smaller circle. It was supposed to have that party member attack any others who were directly attacking the halo'd guy. In the original I remember having more than one person in a halo would crash the game for me ha

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Incriptus (---.tukw.qwest.net)
Date:   03-18-17 09:28

My finest memory is in the List of Fields picking the Halberd. The Pikeman would tell me it's a coward's weapon ... but by playing keepaway it was the only weapon that would let me reliably win early on.

Reply To This Message
 
 Re: Combat
Author: Gotcha (---.adsl.xs4all.nl)
Date:   03-18-17 14:53

I share the same memory. Iolo was especially good at defeating his opponents, since he was a lot better at keeping a distance than Shamino and Dupré.
I still wonder why. It's like it was tied to intelligence?

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-18-17 20:57

Yeah the halberd was great because most of the tiem you could hit them and then move when they were still trying to close in. Not sure about Iolo, but I always kept him witht he crossbow.

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Joseph1 (---.access.telenet.be)
Date:   03-18-17 22:41

I remember this as well. I would expect this to be related to dexterity. It's great to see this is being looked at!

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-19-17 19:51

I can't wait for combat to function more like the original, and maybe some added things. Worst bug in combat right now is the horrible range checking, or lack thereof, where all combat ends in a clustered mess.

Getting the combat options working again would be excellent.

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: agentorangeguy 
Date:   03-25-17 12:29

Any progress on combat yet? Keep the dream alive! :)

-------------------------------------------------------------------------------------
Ultima 6 Mod for Exult site: http://www.ultima6.realmofultima.com/

Reply To This Message
 
 Re: Combat
Author: Knight Captain 
Date:   03-25-17 18:04

Engine coders are working on things, including a feature request to help create and set eggs via Usecode. No doubt this is a larger challenge that we modders are suspecting.

Reply To This Message
 Go to Top  |  Go to Topic  |  Threaded View   Newer Topic  |  Older Topic 


 
 Reply To This Message
 Your Name:
 Your E-mail:
 Subject:
 Subject:
   
 
SourceForge   phorum.org
 
Problems with Exult or this webpage? Contact us.
Last modified: 24 Oct 2001(GMT)