DSB Version 0.55

This forum is for the Lua scriptable clone of DM/CSB called Dungeon Strikes Back by Sophia. Use DSB to build your own highly customised games.

Moderator: Sophia

Forum rules
Please read the Forum rules and policies before posting.
Post Reply
User avatar
Sophia
Concise and Honest
Posts: 4240
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

DSB Version 0.55

Post by Sophia »

What's new:

- Added sys_render_current_item_text to handle custom drawing of the current item
- Added dsb_mouse_state() = mouse_x, mouse_y, l_button, r_button
- Added dsb_mouse_override(image) to temporarily override the mouse pointer image
- Added dsb_put_ppos_at_tile(ppos, position, swap) to move a ppos around in the party marching order
- Added "invisiblewall" arch to standard objects (and renderer hack to DSB to make it work)
- Can now specify a side bitmap for doors
- Added "smooth" arch property to allow doors to animate far more smoothly than default DM doors
- Added "flyreps" arch property to allow faster flying objects
- Worked around an Allegro limitation when blitting one bitmap with alpha onto another
- Expanded dsb_fullscreen to take an optional table of flags in its 5th parameter
- Added game_draw flag to draw dungeon/game view onto fullscreen renderer screen
- Added ability to use individual animation timers for conditions
- Added "LEFT", "RIGHT", "NORTHWEST" and "SOUTHEAST" renderer_hacks for doors
- Added code to the monster AI to better handle individual monsters being frozen
- Improved handling of x_compress and y_compress so it makes more sense
- Added "shading_info" table (in base/render.lua) to allow individual control of object shading
- stat_bonus can now use a table for stat and stat_up for multiple attribute boosts
- Fixed an occasional Lua error when a monster counterattacks
- Improved handling of monster passage through fake walls
- Fixed an error causing ven bombs to glitch if they explode in hand
- Fixed a bug causing torch durations to be shorter than they should be
- Fixed some mistakes and inaccuracies in the base code's comments

Download it here

Note: Some of the fancier new features have only been tested in a very simplistic way, because, in all honesty, after all this coding I didn't really feel like building a thorough test situation. Please let me know if there are bugs, of course.
User avatar
Gambit37
Should eat more pies
Posts: 13715
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: DSB Version 0.55

Post by Gambit37 »

Oooooooooooooooooh! Shiny new features! :)

Wow, you''ve been busy, there's loads of stuff in there and I think I shall be very busy testig it all out. I won't have time to look at it for a few days, but when I do, I'll let you know if I see any bugs or issues.

Is the "invisiblewall" arch also to be used for the full-tile pillar blockers that I mentioned?
Presumably the function dsb_put_ppos_at_tile() can replace that mod/rounding code you gave me for updating the weapons attack order?
Is dsb_mouse_state() available everywhere? And does it report a max of 640x480 reported from top left 0/0?
User avatar
Joramun
Mon Master
Posts: 925
Joined: Thu May 25, 2006 7:05 pm
Location: The Universe

Re: DSB Version 0.55

Post by Joramun »

YAY !
What Is Your Quest ?
User avatar
Sophia
Concise and Honest
Posts: 4240
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: DSB Version 0.55

Post by Sophia »

Gambit37 wrote:Is the "invisiblewall" arch also to be used for the full-tile pillar blockers that I mentioned?
That's pretty much the main reason I made it. :mrgreen:
Gambit37 wrote:Presumably the function dsb_put_ppos_at_tile() can replace that mod/rounding code you gave me for updating the weapons attack order?
I'm not sure what code you mean. The actual reason I made it was to facilitate reordering the party's marching order by means of custom GUI thingies you might want to make, like a combined weapon selector + marching order box, or whatever.
Gambit37 wrote:Is dsb_mouse_state() available everywhere? And does it report a max of 640x480 reported from top left 0/0?
Yes to both.
User avatar
Gambit37
Should eat more pies
Posts: 13715
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: DSB Version 0.55

Post by Gambit37 »

Sophia wrote:I'm not sure what code you mean. The actual reason I made it was to facilitate reordering the party's marching order by means of custom GUI thingies you might want to make, like a combined weapon selector + marching order box, or whatever.
Aha, right! Nice :-D (I was referring to that code you gave to reorder weapons attack icons based on the marching order)
User avatar
Gambit37
Should eat more pies
Posts: 13715
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: DSB Version 0.55

Post by Gambit37 »

Thought I'd have a quick look at this :-)

Regarding shading table: looks straightforward enough, though it seems to only apply to TYPES. If I wanted to shade a single unique arch, would I have to create a new Type and assign just that arch to the type?
Or is there a way of applying shading to individual archetypes?

Is the new "smooth" property a boolean?
User avatar
Sophia
Concise and Honest
Posts: 4240
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: DSB Version 0.55

Post by Sophia »

Gambit37 wrote:If I wanted to shade a single unique arch, would I have to create a new Type and assign just that arch to the type?
Or is there a way of applying shading to individual archetypes?
You can't create your own types. You're probably thinking of classes.
So, right now, there's no way to apply shading to individual archetypes.

This would be a bit messy to add. What are you trying to do?
Gambit37 wrote:Is the new "smooth" property a boolean?
Yes, it is.
User avatar
Joramun
Mon Master
Posts: 925
Joined: Thu May 25, 2006 7:05 pm
Location: The Universe

Re: DSB Version 0.55

Post by Joramun »

EDIT: removed meanlingess babbles

Soon dsb will look like that : http://xlengine.com
Last edited by Joramun on Wed Jan 16, 2013 3:10 pm, edited 2 times in total.
What Is Your Quest ?
User avatar
Gambit37
Should eat more pies
Posts: 13715
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: DSB Version 0.55

Post by Gambit37 »

Added ability to use individual animation timers for conditions
Any clues how to set this up?
User avatar
Sophia
Concise and Honest
Posts: 4240
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: DSB Version 0.55

Post by Sophia »

Gambit37 wrote:
Added ability to use individual animation timers for conditions
Any clues how to set this up?
It's just an additional optional parameter to dsb_set_condition.
If you specify a fourth parameter, this will be used as the animation timer. Otherwise, conditions use the global timer.

(I honestly don't remember exactly how it works due to the amount of stuff that has happened since I added this feature. Experiment with it. :mrgreen: )
User avatar
Gambit37
Should eat more pies
Posts: 13715
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: DSB Version 0.55

Post by Gambit37 »

I created a new thread "DSB Version History" that copies all the info from all releases into one easy-to-scan post. It's interesting to look back over the development: I had no idea DSB is 6 years old!!!
User avatar
Sophia
Concise and Honest
Posts: 4240
Joined: Thu Sep 12, 2002 9:50 pm
Location: Nowhere in particular
Contact:

Re: DSB Version 0.55

Post by Sophia »

I feel old.

It's an interesting retrospective. Thanks for doing that. :)
User avatar
Gambit37
Should eat more pies
Posts: 13715
Joined: Wed May 31, 2000 1:57 pm
Location: Location, Location
Contact:

Re: DSB Version 0.55

Post by Gambit37 »

Ooops, I hope doing that hasn't made you feel too old! I hope you can instead be proud of what you've achieved, it's an awesome project :D
Post Reply