Sign in to follow this  

Looking for a roguelike influenced book

Recommended Posts

Hello,

I use to program all through 5th/6th grade through high school and finished c++ classes at a community college. It has been 9 years since I've programmed. I have a lot of spare time at the moment and want to get back into programming.

I was wondering if anyone could recommend a few books talking about the design of a simple tile based RPG game. Perhaps with an indepth build of the engine and something to build off of. My game programming books are so outdated, but I do have my original C++ books. I think my last gaming book was DirectX 9. I should be able to get the language down fast again, but I really like the books that hold your hand and walk you down everything in the engine ect. My last book I read for fun was Programming 2D games I believe? It was very good and I'll be reading it again. I'd just prefer a note on topic book.

If anyone could help I would appreciate it! I tried a search on Amazon and it looks like the programming market books don't exist anymore. I wrote down a list of ones that could be good, but anxious to hear from the veterans and see if any of the suggestions were on my list.

Thank you!

Share this post


Link to post
Share on other sites

From your description, your knowledge of C++ is outdated (you missed all the standards advancement of the last years, and books from 9 years ago should be treated as paperweights) but on the other hand DirectX and techniques for 2D games haven't changed much.

Share this post


Link to post
Share on other sites

From your description, your knowledge of C++ is outdated (you missed all the standards advancement of the last years, and books from 9 years ago should be treated as paperweights) but on the other hand DirectX and techniques for 2D games haven't changed much.


What exactly had changed? This is both interesting and disappointing. Can you guide me to a book that will update me?

Share this post


Link to post
Share on other sites

Meyers' Effective Modern C++ can get you caught up on C++.

For DirectX you're honestly better off avoiding books and tutorials as pretty much every DX11 book - and most tutorials - I've seen rely on deprecated support libraries. However, if you're coming from DX9 you should be able to just pick up DX11 and rely on MSDN to get you through the transition. The biggest change is the way that shaders are handled. Apart from that it's mostly improvements except that there's no image loader anymore, so you have to write some crazy WIC code to get Windows to load textures for you.

You can always ask specific questions here or in the chat if something confuses you.

Share this post


Link to post
Share on other sites

It's definitely worth noting that while DirectX 9 is similar in purpose to newer iterations, the ways you actually use them are totally different. Most notably, DirectX 10 and onwards no longer has a fixed function pipeline.

 

I actually think 11 is easier to understand than 9, but it's certainly more to take in.

Imo, you shouldn't be afraid of using slightly older DX11 educational material in order to learn. Just be aware that you'll need to tweak it as you go. This site will save your life if you're going down that route: https://blogs.msdn.microsoft.com/chuckw/2013/08/20/living-without-d3dx/

Since there's very few newer tutorials, most will use d3dx and other support libraries, as Khatharr said.

 

I actually wrote some DX11 learning material aimed at beginner/intermediate C++ coders recently, so feel free to send me a PM if you want me to direct you to it.

Share this post


Link to post
Share on other sites

I actually wrote some DX11 learning material aimed at beginner/intermediate C++ coders recently, so feel free to send me a PM if you want me to direct you to it.

 

Is it not blog/article worthy yet? The lack of proper literature is really kind of embarrassing right now.

(To be clear for everyone, the problem with the existing literature is not the fault of the people who wrote the DX11 articles that use D3DX and FX. It's the fault of Microsoft for continuing to forcefully deprecate things that people rely on.)

Share this post


Link to post
Share on other sites

Since you mentioned tile-based RPG games, I've been slowly working through https://howtomakeanrpg.com/ .  I'd recommend it, it's a pretty thorough, project-based approach.

It's primarily in Lua, although if you want you can tear into the C++ engine that backs it up - it's open-sourced on GitHub and pretty approachable.

Share this post


Link to post
Share on other sites
Posted (edited)

 

I actually wrote some DX11 learning material aimed at beginner/intermediate C++ coders recently, so feel free to send me a PM if you want me to direct you to it.

 

Is it not blog/article worthy yet? The lack of proper literature is really kind of embarrassing right now.

(To be clear for everyone, the problem with the existing literature is not the fault of the people who wrote the DX11 articles that use D3DX and FX. It's the fault of Microsoft for continuing to forcefully deprecate things that people rely on.)

 

Totally agree, the lit that's out there is top notch stuff, it's just that the technology changes so quickly.

I'm actually a lecturer for Polygon College, so all of my material is there (got some C# stuff I'm shamelessly fond of too). Just wasn't sure if I could link to it (but now I have anyway).

I covered basic DX9, transitioning from DX9 to DX11, and (so far) pixel & vertex shaders, vertex/index buffers, constant buffers, using matrices, and a few other goodies. It's an ongoing project, so I'll be adding onto it progressively.

My only criticism for most (read: not all) reading material is that it can be a bit heavy and inaccessible, so I try to make my stuff engaging and 'one-step-at-a-time'y.

 

I'd like to do some mathematics material too, in the near future. The delicious vectors and matrices, and algebra and trigonometry to cover the foundations - for a start.

 

 

(PS: I was pretty raw about MS's deprecation habits as well, but the bottom of the link in my last post made a pretty compelling argument:

 

A few folks have asked why the D3DX libraries were deprecated in the first place in the transition to the Windows 8.x SDK. D3DX has been a useful set of utility code for Direct3D applications since Direct3D 7, but has a presented a number of challenges over the years. The primary one is that as a ‘closed-source’ utility library; it was difficult to debug, resolve performance issues, or apply hot-fixes without taking a dependency on a newer release of the DirectX SDK. Second, with the security requirements that came with the adoption of the Secure Development Lifecycle (SDL) at Microsoft, the transition to a DLL rather than a static library created a redistribution requirement that complicated setup for many developers–note that static libraries have their own problems such as being specific to a particular release of the compiler including service pack level. D3DX9 itself became a bit bloated which resulted in a DLL larger than many EXEs that used it. Finally, the actual usable content of subsequent generations of D3DX left D3DX11 with not much in it. The need for useful utility code is still there, but it is now being solved with various ‘shared-source’ solutions rather than a monolithic closed-source DLL like D3DX.

It's rare that MS would concede that something of theirs is better off done by others ;) )

Edited by FrankEnCode

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this