Pulling carts


  • registered

    If someone pulls a cart and leaves the room via teleportation (not moving out), the cart stays there. Well objects don't track if they are being pulled directly. When someone ELSE comes along and pulls the cart, the code only checks if someone in the current room ONLY is pulling it.

    This causes problems with the relics, which are carts, when people use recall spells while pulling them. Someone else comes along and snatches it under their nose.

    Suggestion: add a field in objects for indicating it is being pulled. This will add more efficiency elsewhere in the code, such as the selfdestruct function.

  • retired

    Red mentioned this in passing - it would appear that if you use word of recall or some other transport spell, the relic will stay where it was until you actually move, at which point the relic suddenly ends up back at your location. I don't know how this happens because I haven't checked the code, but I'd surmise that there's a pointer to the relic object in the char_data structure, and when the char does the spell, the code doesn't explicitly take care of the pulled cart - but then the char moves and the movement code takes care of it by referring to the cart pointer. I would suggest it would be more elegant either to deal with the cart explicitly in the transport spell code, or simply make it so that you can't use transport spells while pulling a cart. Personally I'd prefer the former, but that's me. If you do go the route of allowing transport spells while pulling a cart, then perhaps you will also consider allowing slayers/chlings to "fade" while pulling. This would give the "fade" skill a practical use. At this point, I'd like to point out another bug, but I'd also like to relabel it as an opportunity. If I'm pulling a cart through the wilds myself, I get lagged by the weight of the cart. Annoying, but fair enough. However, if I follow someone else while pulling the cart, and they drive (so-to-speak), then the lag disappears and we move together at full speed. I didn't know if this was a bug or a deliberate feature, but how about we make it so that the more people you have in your form, the faster you can move with a cart? Divide the load between us. That's prolly the simplest way to do it. If you wanted to get clever, you could have one person pulling and the rest have to "push". Personally I like the form idea better for simplicity. Just a suggestion. Scott.

  • registered

    it's any pulled cart (the relics are carts). You move, the movement code sees you have a pulled cart and removes it from *its* room, not your last room. One of three things would need to be done: 1) force an auto-drop of ANY cart on teleportation 2) prevent the action 3) teleport the cart with the puller. With the case of the relics… it could do #1 or #2, depending on relic? the relic could interfere with teleportation. All other carts can just do #3.

Log in to reply