C-Sharp Programming Beginner Tutorial: No-Frills Dungeon Crawler (Part 1)

in #csharp-forbeginners6 years ago (edited)

Hey everyone!! I apologize for the delay in getting back to my Tutorials. My days have been super-hectic and busy, which has made things very difficult for me to get these done. On top of that, the program that I have been building has been giving me some fits and I've scratched it and started over about 4 times already in an attempt to make this closer to the novice level. This will definitely test your understanding skills (as well as my teaching skills).


I wish this were a representative image from the game

In order to simplify this and make sure it's not a super-long Post, I will begin this mini-series on the No-Frills Dungeon Crawler by going over the concept and initial visuals first. As the mini-series goes along, I will be adding more to this game so that we have an actual game with scoring, enemies, and a start and finish. I plan on this mini-series being no less than 4 or 5 parts.

So, with no further gabbing and stalling...


The Current State of the Abstract Concept

Ok, so the concept in essence is a fairly well-known and popular one: walk through a dungeon without dying.

In this instance there is no reason (yet) for you to be in this setting at all. I plan on adding a reason as I continue as well as a small splash screen to show this reasoning. I'm not going into a great deal of complexity, but it will definitely give you an idea of where you could go from here to add on to the game.


A New Hope for the Abstract Concept

So, I'm considering the following for the Final Concept (let me know if it sounds legitimate and fun):

The Story: Long Ago in a Fantasy Far, Far Away there was a great Kingdom in the Realm of Kara Noggus. In this Kingdom, called Val Davros, there lived a young King and his bride-to-be. King Agaron was set to marry the beautiful Princess Lana of Mira Durh.

The day before the wedding, an evil wizard arrived, his magical powers on full display. Angry and jealous of the young King's prestigious position, wanting the young Princess for his own, Zankar stole her away. Casting a great spell, he was able to secret her from the castle and hide her away in his magical lair, where she would stay young forever with him.


The King, perhaps?

Years roll by, as they are apt to do with time, and the King grew old and weary of the search. At the ripe old age of 37 he gave up looking for a way to be with Princess Lana and married her twin sister, Princess Goya. His kingdom, broken and split by the effort, tore apart and he was overthrown. He died a lonely man in a desolate, destroyed land while Princess Goya left to be Queen of a different Kingdom.


Maybe Princess Lana/Goya?

Good Queen Goya, missing her sister and feeling the bond with her become tense, she summoned all of the knights in the land. After much competition, you are chosen as the Knight to save Princess Lana from the Evil Wizard Zankar. With his last Magic, the Queen's Sorceror Melidrytan was able to divine the whereabouts of Goya's twin. She was being held in a magicked catacomb of shifting walls deep within the bowels of the Earth. This is where you come in.

Now, armed with only yourself and a talisman of luck that allows you to breach the barrier, you are sent in search of Princess Lana. Your reward: Gold, Treasure, Prestige, Power, and Lana's Hand-in-Marriage. How will you fare against the magical shifting walls? How will you be able to survive?


Zankar?

The Game-Play: There are directional buttons that can be clicked to turn to the Left or Right as well as moving Forward or Backward. Obviously, if a wall is in your way, you cannot go that direction. Otherwise, you can move through any doorway to the next room, which will be a room with a random number of doorways. Just move through the corridors and hope that you can stumble upon the Princess.


Is he too cute to Battle against?

Monsters crawl the dungeons also and you might enter a room with a monster. If you enter such a room, a turn-based battle will ensue. Defeat the monster and you will continue. Die, and it's GAME OVER for your adventures. Each Monster defeated will earn you prizes which increase your score.


Game Over

Treasures and objects of value are strewn around the corridors... the Wizard has been collecting treasure for a very long time, after all. Each room you enter has a chance of containing some sort of treasure or item. Some Items will Heal or Strengthen, some will be cursed. Take heed of what you do and you might become wealthy beyond anything you have ever dreamed!

IF you are strong and brave and dedicated (or lucky beyond anything), you will find the Wizard's Room. Once you find that room, do battle against Zankar himself and hope that you are powerful enough to defeat him. If you can win this final battle, you will be free to find the Princess... it's not as easy as the Princess being in the same room, so you will continue onward.

Once you are able to find Princess Lana (only after the Wizard is defeated) you will unlock the Exit. Again, finding the Exit is not as simple as walking into the next room. So, continue onward, battle and collect extra treasures, and hopefully you will survive to find the Exit to the Catacombs. The Exit only appears once you have saved Princess Lana, since her curse binds the Exit closed.



Winner!

Scoring a Win

So, scoring is still up-in-the-air, but we will have scoring for winning battles against monsters, collecting treasures, items, and other such things. In addition, there will be bonus points for Finding the Wizard, beating the Wizard, Saving the Princess, and Finding the Exit.

How much would you be able to score?


The Tutorials

Following are the Links to the Previous Tutorial Posts, just in case you are a new reader that needs to go to the beginning. I appreciate all of you, so please read these as often as you like:

C# Programming Beginner Tutorial: Basic Concepts and Ideas

C# Programming Beginner Tutorial: A First look at actual code using D&D as the Project

C# Programming Beginner Tutorial: Variables & Data Types to Fuel the Gaming Engine!

C# Programming Beginner Tutorial: Designing the Game with Programming Logic in Mind (Part 1)

C# Programming Beginner Tutorial: Designing the Game with Programming Logic in Mind (Part 2)

C# Programming Beginner Tutorial: Designing the Game with Programming Logic in Mind (Part 3)

C-Sharp Programming Beginner Tutorial: Designing the Game with Programming Logic in Mind (Part 4)

C-Sharp Programming Beginner Tutorial: Rock! Paper! Scissors!



So Much Happy!!

Sort:  

I also code using C# but I only developed desktop applications and never thought of developing such a game in that language. I get excited to see how the game will be developed so you have me following every series of your tutorial for the game.
The characters seems to be fine with me but I think it will be nice to let the player decide on what physical attributes his avatar will be.

That’s a great idea, but I’m not sure how in-depth I want to go with any specific game since this Tutorial Series is supposed to be geared towards the novice programmer. I’m trying to simplify as much as possible.

I might be able to use my previous lesson dealing with the D&D Style Character Sheet to create the character stats to use against the monsters. I should be able to just use that same class file I think.

I will see what I can do.
Thanks!

Ok sir, thank you :)

You'll have my full support

Nice job with the detailed explanation of the story plot. It sounds like a fun game. I am not in a place to try programming yet, but the concepts are clear and it was fun to read the plot. Nice work!

No worries at all my dear! I didn’t figure you’d be up for the code based lesson but thought you might like to hear about the game itself. If you change your mind I also posted the next lesson with the actual code.

I have developed some desktop applications in c# but never developed a game in it, I found to be very interesting after watching this great tutorial from you, I will surely try it, Thanks mamte for providing this to us :)

You’re quite welcome. If this game becomes a solid and fun game, I will try to implement it in some way as a Web Service that is run from within a web page. I’m not super familiar with all of that, though, so that will be down the road some.

That will be so exciting and will have so much fun, if you need any help from me, i will be available for you all the time...

Cool that would be great. Thanks for the offer!

It will be my Pleasure :) God Bless you mate... And help you in reaching your goals...

Thanks so much!

I am a huge fan of anything game related. I like the idea for story. Will it be a point and click mainly or will it have a choose your own adventure plot? I am intrigued to see more. RESPECT

I'm still trying to teach Novice Programmers how to do this, so I'm going to do a simple point-and-click interface because it allows newer programmers to use the drag-and-drop tools withing the IDE that they're using. Thanks for reading! and if you want more, you can definitely go to the previous posts as well and read up.

I see. I might have overlooked that for some reason. I guess I got caught up in the game plot and forgot it is a tutorial, ha. My bad. Good shit. What program would you recommend a beginner to use?

I've always used Visual Studio, so I'm a bit slanted in my opinion. It has good Intellisense options and a nice intuitive interface. My last post actually takes a bit of a look at some of the Visual Studio components.

So, finally your C-Sharp Programming Beginner Tutorial started again. I was learning this langauge when I was doing masters but I read this language for just to complete my syallaybus because the Web Programming cateches my all intentions.

Nice to see that someone on steemit is starting tutorials for newbie after a long time. It will be great help for those who are currently running.

I certainly hope it gives enough advice and tips to get newer programmers on a back to success without being too far out-of-reach (although I understand that some of the items may be for a higher level). As Tutorials go, I also have a SQL Tutorial series that I write as well.

Both are geared mainly for beginners, but they may progress organically into more and more difficult components as the need arises. I will always try to explain new techniques at a lower level.

I hope these Posts help you out.
Thanks for reading!

you are a great guy.....love u so much......all of your post is always so informative,so i regularly follow your blog. love to read it...........We are all lucky to have such an exemplary one as you....

I really appreciate the kind words. I think I’m doing well if I am able to affect even a single person in a positive way with each post that I write.

You're saying right, definitely huge people can get benefit from your posts from the beginning to the end. Your way of teaching to newbies is really remarkable. Yeah, it helps me a lot. Steem On! :)

That makes me feel good that my instruction is helpful to you. Do you have any suggestions for future Posts or topics for games to write?

Yeah sir, it's good to clear the concept of any technical term as per programming view through stories because games are mostly followed by some interesting stories just like above.

So, you should start some games tutorials for kids because there are numbers of people who have families and if they are programmers then they can develop games for their kids using programming skills in C sharp.

Even you should have to developed a professional game or maybe you got already. If you have any game which is developed by you, you can share it with us and the procedure as well.

I like these ideas and will consider incorporating them as I go forward.

Thank you! I followed you for this honor! :)

I appreciate it!

Looks intriguing enough to mee, @dbzfan4awhile! Keep up the good work. That wizard looks mysterious and that king reminds me of clash royale :P

Those, of course, were just clipart images and probably not going to be actual game images. Maybe I can make much better images for the game. Maybe if it goes alright I'll try to host it for play somewhere.

now i am taking a course on c ......it is very interesting

C has a great deal of overhead and internal things that make the learning curve very difficult. I don’t know too much in the way of C, and a little more than that in C++, but I prefer C#.

thank you for sharing
I really like
It is also suitable for adventure game fans ..

Indeed. I was a big Adventure game fan back-in-the-day, especially the Sierra-Online games (King's Quest series, Quest For Glory series, even Police Quest series). I'd love to be able to make games like those with slightly better graphics.

Nice
Hopefully the desire of his friends steemit

Perhaps. What are your favorite Adventure Games?

Nice
I also like adventure games

Do you have any favorites from childhood?

Steemit buddy
If you have time to visit my blog occasionally
I really hope the support of all steemit friends, because I am a new user.

yes
I have been a favorite since I was 10 years old

Very cool - I'm looking forward to more posts!

I'm glad to hear that. Do you plan on learning C# and programming?

I'm always interested in learning more programming - I already have a few C++ courses under my belt but I primarily use python/SQL on a day-to-day basis

I completely understand that. I use C# and SQL on a day-to-day basis, so it only makes sense for me to offer up tutorials on the subject.

@dbzfan4awhile you really make wonderful article and surely reading your articles on programming will surely help me in my interviews .I'm really blessed to follow you and hope you carry on with this good work thanks a lot !!

I certainly hope I am able to help you out through my lessons and writing. Thank you for reading.

I am studying computer engineering and I think we need to know since the bigger until the smaller detail about C#

This is just the first Lesson for this Game. The next lessons will explain the actual code and, hopefully, be easy to follow for the newer programmers that find the Posts.

If you want to start at the beginning of my teaching, go to the Tutorial Links at the end of the Post and read them in order.

Nice! I am following you! I will watch your turorials, i invite you to my dtube channel... i love to sing, that is one of my passions.

Very nice I will try to take a look at some of them!

Coin Marketplace

STEEM 0.17
TRX 0.13
JST 0.030
BTC 56519.24
ETH 2991.31
USDT 1.00
SBD 2.16