Results 1 to 10 of 10

Thread: Hello!

  1. #1

    Default Hello!

    Hello there! I'm, er, new. I stumbled upon NovaShell last week, although I forget exactly how. Hrm.

    Anyway! Yes. I really like what I see; this is right up my street, since I've previously made stuff using the slightly-similar-ish VERGE engine (http://www.verge-rpg.com), which used a C-style scripting language. Lua shouldn't be a problem, though: I've heard of it before but never really put the effort in to learn it. Well, now I've got a reason, I've been knee-deep in documentation for the last five days and I'm doing pretty well.

    A few questions, though:

    • Is netcode planned for the future? I love a bit of co-op!
    • Could we have a pak-file system, wherein all a game's resources are bundled into one neat file?
    • Any plans to make standalone games a little easier to construct? Right now, I believe the method is to make a copy of NovaShell and the base directory and merge your world files with it; less than ideal for newbies!


    Well, that's me done posting. I'm off to go read some more Lua stuff.

  2. #2
    Administrator Seth's Avatar
    Join Date
    Jul 2002
    Location
    Japan
    Posts
    5,340

    Default

    Welcome to the party!

    Netcode - no plans currently. It is possible to make a co-op game though if both players are at the same computers with different joysticks though.

    Pak-file system - This is on the to-do list, the format will be a standard .zip.

    Easier to make stand-alone games - Yeah, I would like to have automatic packing options at some point, once there are games people are ready to pack.

    I would like to support the following packing options:

    • Make ".novazip" of active world (requires novashell to run, but easier than zipping it yourself and renaming it .novazip)
    • Make Windows stand-alone zip version of world (end user would unzip and run game.exe to play)
    • Make Windows stand-alone installer version of world (like above, but ends up with a single .exe with a nice installer/uninstall, internally NSIS would be used, this would be available only on Windows)
    • Make OSX stand-alone version of world (Would end up with a single .app file that is zipped into MyWorld.app.zip, this is a nice and easy way to share Mac games)


    I really like the idea of Windows users being able to press a button and pop out a finished Mac build!
    Seth A. Robinson
    Robinson Technologies

  3. #3

    Default

    Excellent. Those proposed features have me excited already.

    I'll hold out for netcode before attempting something multiplayer: my regular gaming buddy resides in Suffolk, several counties away, so unless he has a joypad with a VERY long lead (and a telescope with the magnification capabilities of Hubble) we won't be co-op'ing any time soon with NovaShell.

    Since I began fiddling with NS I've a few questions:

    • Is there some way to do transitions (fade in, fade out etc.)
    • When you say you've removed all the "dangerous stuff" from the Lua scripting system, which bits in particular? Anything I'm going to miss?
    • So, why IS it called NovaShell?


    Cheers!

  4. #4
    Administrator Seth's Avatar
    Join Date
    Jul 2002
    Location
    Japan
    Posts
    5,340

    Default

    Is there some way to do transitions (fade in, fade out etc.)
    Well, I've never done it, but I think a way to do it would be a FadeToBlack() and FadeFromBlack() function that internally throws up a giant rectangle entity over the screen on the top most layer (under the GUI, if you don't want the GUI parts to fade as well) and plays with its alpha. (FadeFromBlack would just check to see if an entity named "FaderUtil" or whatever we name it exists, if it does, it would slowly fade its alpha to zero then kill it.

    I'll throw this into the RPG example soon, been planning to actually, like for when you die.

    >>When you say you've removed all the "dangerous stuff" from the Lua scripting >>system, which bits in particular? Anything I'm going to miss?
    The goal is that you can safely run anyones "world" without worrying that they are going to screw up your computer or steal your quicken data. So functions that deal with writing/reading files were removed or modified so they cannot read files outside of its main world dir.

    Now, here's the thing though, if you ever decide that you need the read/write commands, it's not an (overly) difficult thing to grab the source code (or ask a friend) and just turn them back on and compile your own .exe with them enabled or any other changes required.

    You may not ever need to mess with it, but it's nice to know that you would never be at a true dead-end if I died or didn't want to add something or whatever.

    So, why IS it called NovaShell?
    Good question!

    A nova is a cataclysmic nuclear explosion caused by the accretion of hydrogen onto the surface of a white dwarf star.

    The fireball expands and as it visibly fans out away from the star, it is called a nova shell.

    So make some fun games and maybe they will explode and spread out across the world.

    Also, in computer terms, shell can mean an interactive program language interpreter that provides a top layer to the underlaying OS/system which also fits.
    Seth A. Robinson
    Robinson Technologies

  5. #5

    Default

    The fading solution seems okay, but it would be nice to have some functions that let me directly draw to the screen some basic geometric shapes (rectangles, circles, single pixels, lines etc.) rather than have to make a graphic in my image editor for literally everything.

    I had that sort of thing with VERGE (http://www.verge-rpg.com) (which was more procedural than object-based) but quite how you'd do that sort of thing with an object-based system is completely new to me.

  6. #6
    Administrator Seth's Avatar
    Join Date
    Jul 2002
    Location
    Japan
    Posts
    5,340

    Default

    I guess I could add some basic primitive drawing, perhaps they could all accept a "layer id" number parm, so it knows when to draw - that way you could have any any entity (or function or whatever) draw things out of order and still have the desired effect in the end.
    Seth A. Robinson
    Robinson Technologies

  7. #7

    Default

    Yes, I'd like to see that in action.

    Moving from one system to a radically different one can be quite the leap, so working out how to do similar things in one the same as the other often confuses the bejesus out of me.

  8. #8
    Squire
    Join Date
    Sep 2009
    Location
    Colorado, USA
    Posts
    25

    Default A Noob's kudos to Seth...

    --new NovaShell user... posting here so I don't clog up this Forum with another hello from a noob thread. Yepper, I'm a noob -- flat out -- no question about it... My programming experience dates back to Apple BASIC and unfortunately stopped shortly thereafter (a brief introduction to Pascal, ugh).:wheelchair:

    I am an experienced RPG'er, however, and am finding fewer and fewer really good rpg's out there (ya know... the ones that actually got you thinking and involved --plug: "Wasteland" -- as a rpg is supposed to do), hence my solution: Make my own!

    So... an rpg is prob not the best place to start learning how to program but I'm determined. I have a clear and concise image/concept of what I'd like to see and incorporate into my game. Over the past year or so, I've searched and experimented, then searched some more... for tools/SDK's/libraries/game engines, and though some had a few good qualities, none have compared to the ease AND versatility of NovaShell. (everything I've read says C++ and lua are the way to go for this task it seems) So... hat's off to Mr. Robinson. Nice work so far.

    --HOWEVER-- ...the tutorials and the Scripting reference are a bit sparse for a noob (at least in terms of progressing very far). I must admit that much of what I've learned so far has come from disecting the example scripts and a whole lot of 'trial-and-error' ... though, in my experience, this way of learning tends to provide better retention, at the very least, though highly frustrating. Sticking to my guns and just to reiterate: overall a very good GDK.

    My progress so far... (I'll find another thread to continue this on at some point) ... takes to me a couple of experiments:
    Inventory
    --it seems NovaShell doesn't offer a way, other than the one in the RPG example, to control a players inventory... so I'm experimenting with using a separate map and using setAttach to create a graphical gui/inventory. This may or may not be possible or if it is, may not be very efficient. Any thoughts on this would be appreciated before I waste too much time on it.

    Second task at the moment: Right-clicking
    --to bring up a menu to handle a whole host of options depending on each entity. e.g. READ.. for a document, PICKUP.. for various items (see *Inventory* above), and perhaps even INSPECT/EXAMINE... for a call to detect traps and such or maybe to Skill rolls...

    more on these later... I hope... don't abandon this project quite yet Seth... A very good tool.

  9. #9
    Administrator Seth's Avatar
    Join Date
    Jul 2002
    Location
    Japan
    Posts
    5,340

    Default

    Welcome to the forums sirlich,

    Hmm, interesting idea on using a separate map system as your inventory screen.

    That should work fine. The only disadvantage is you can't "overlay" the inventory over the main playing area, but if your game doesn't need that, fine. (For instance, Dink Smallwood's separate item screen would have worked fine with this)
    Seth A. Robinson
    Robinson Technologies

  10. #10
    Squire
    Join Date
    Sep 2009
    Location
    Colorado, USA
    Posts
    25

    Default

    Quote Originally Posted by Seth View Post
    Welcome to the forums sirlich,

    Hmm, interesting idea on using a separate map system as your inventory screen.

    That should work fine. The only disadvantage is you can't "overlay" the inventory over the main playing area, but if your game doesn't need that, fine. (For instance, Dink Smallwood's separate item screen would have worked fine with this)
    I downloaded Dink Smallwood and noticed that the inventory system is pretty much what I'm hoping to achieve...for now. Though it looks to me that the source is entirely in C++... which is way above my level at this time

    So I'm trying to accomplish the same effect with just the new map and lua script... slow going but...
    Continuing Inventory progress here.

Bookmarks

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •