Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - rubenwardy

Pages: [1]
Feature requests / Re: Create a button class
« on: May 06, 2020, 06:15:37 pm »
Here's a comparison of GUI libraries I wrote

Thanks for bumping the thread, because I've missed such a nice project  :P

I quite like the minimalistic graphics, and looking for more gameplay details.

Thanks :D

Any info on when first playable alpha will be available? Also, is it a commerical project, and if no, is the source code available?

I have no idea when it will be available. I'm currently keeping the source code closed for two reasons:

  • it is not in any playable or usable state, and I don't want to have to support or accept contributions to it
  • so I can decide at a later point whether to make it open source or a proprietary product

I am a contributor to lots of free software projects, but this is something for myself!

I've been publishing things I've learned during the course of this project. See the RVWP webpage for a list, and also these:

SFML projects / Re: 9001
« on: January 04, 2020, 07:35:31 pm »
The rendering on this is quite impressive! Are they particle systems?

I've made a lot of progress since the opening post!

New World Rendering

The world rendering has been massively overhauled to render all layers in a cross-section where you can walk up and down layers like so:

3D Lighting

I've added support for 3D lighting with day and night transitions:

I've created a webpage with up to date information here: https://rubenwardy.com/rvwp/

And More!

  • 8-bit connections for walls
  • Add architect mode
  • Add plots, to represent land ownership
  • Use ENet for networking
  • Improve chunk loading by using spiral search pattern
  • Better inventory GUI, with pictures and tooltips
  • Simplex-noise based map generation

Feature requests / Re: Better gamepad support
« on: April 24, 2018, 02:04:50 pm »
The DB is a text file, and is licensed under ZLIB iirc. It's not specific to SDL so can be reused

Network / Re: Questions About Server Loops
« on: April 22, 2018, 06:15:37 pm »
Unless you're specifically aiming for an MMO server (which I recommend avoiding) then you don't need to use threads like that. You can receive packets in a non-blocking fasion, and then update any states and such in the same thread. If you want to support massive parallism, then it's worth looking into things like farmer/worker and spatial workers instead of the design, as it'll scale much better.

Avoid over engineering, the simpler solution tends to be cleaner and better. That being said, over-engineering is fun :)

I have been working on a game for the last 3 years, on and off.

I’m aiming towards a city-based game, where players can wander around a procedurally generated city. The concept is you'll run a community of rebels in a dystopian future, so there will be mechanics such as stealth and avoiding standing out.

I haven't got much actual game play, but I have a partially functional networked world with multiple z-layers. RVWP originally standed for Ruben's Virtual World Prototype, but now stands for Ruben's Virtual World Project.

The map is made up of 3 layers - terrain, flooring, and objects. Each of these is registered using Lua scripts and stored in using the Type Object pattern. I choose this instead of ECS as it's easier to serialise and send across the network. Moving things on the map - including players - are Entities. Entities use an ECS with components mostly implemented in Lua.

The client is structured using a MVC pattern. There's controllers and views for each window, the HUD, and the scene. There are also multiple controllers for the player input, which allows the type of input (keyboard/mouse/etc) to be abstracted away from the actual movement code.

More information: https://rubenwardy.com/rvwp/

Blog post detailing history: https://blog.rubenwardy.com/2017/08/13/multiplayer-topdown-sandbox-game/

Feature requests / Re: Better gamepad support
« on: April 20, 2018, 03:58:32 pm »
I've been struggling with this on my game, and ended up having to hardcode particular controllers. Well, I say that - currently I only support my own.

sf::Joystick::Identification info = sf::Joystick::getIdentification(joystick_id);

if (info.name.find("xbox")) {
        type = XBOX360;
} else {
        type = GENERIC;

// Just assume that all controllers are like XBOX for now

buttons_map[BTN_A] = 0;
buttons_map[BTN_B] = 1;
buttons_map[BTN_X] = 2;
buttons_map[BTN_Y] = 3;

// Whether LT & RT are axes or buttons varies - detect this here
if (sf::Joystick::hasAxis(joystick_id, sf::Joystick::Axis::Z)) {
        buttons_map[BTN_LT] = -1;
        buttons_map[BTN_RT] = -1;
        trigger_lt = sf::Joystick::Axis::Z;
        trigger_rt = sf::Joystick::Axis::R;
} else {
        buttons_map[BTN_LT] = 6;
        buttons_map[BTN_RT] = 7;
        trigger_lt = -1;
        trigger_rt = -1;

Pages: [1]