[QUOTE=Parakon;22291542]I'm getting nervous about how well people will like my game the closer I get to finishing it[/QUOTE]
I am gonna love it; I like the art style.
I have made almost no progress today.
[editline]06:37PM[/editline]
[IMG]http://i429.photobucket.com/albums/qq12/the1trueryandaniels/foo.png[/IMG]
FUCK
[QUOTE=polkm;22292686]I am gonna love it; I like the art style.[/QUOTE]
this always helps, thanks
[QUOTE=ryandaniels;22293041]I have made almost no progress today.
[editline]06:37PM[/editline]
[IMG]http://i429.photobucket.com/albums/qq12/the1trueryandaniels/foo.png[/IMG]
FUCK[/QUOTE]
Hey I hope you don't mind me copying every single aspect of your game without asking permission all the way down to the art style.
[img]http://filebox.me/files/35e2us7ae_gamecopy.png[/img]
[editline]09:49AM[/editline]
Oh fuck oh fuck this wasn't meant to be top of the new page
On top of working on Solace: Star Requiem with my FP C++ development team, I'm working with a close friend of mine on a fantasy history generator a la Dwarf Fortress, trying to get as indepth as possible. I actually contributed to this code-wise. My portion is rather clunky and unoptimized, but hey, it's my first time coding in a few years. I think I did well enough.
Here's the github. [url]http://github.com/h0rs3r4dish/Epic-Generator[/url]
[QUOTE=raccoon12;22293501]i do though[/QUOTE]
where's my triangle royalties
[QUOTE=andersonmat;22155452]Space Invaders for my AP Computer Science project. v:v:v
[img_thumb]http://anyhub.net/file/space_invaders_1.png[/img_thumb]
I died. :(
[img_thumb]http://anyhub.net/file/space_invaders_2.png[/img_thumb][/QUOTE]
Please, God please, make this the 'game over' music:
[media]http://www.youtube.com/watch?v=M6aRwky0W5Y[/media]
Ok, I need help with something strange.
I've decided to try drawing text on a Bitmap using the .NET framework, then reading the pixels and drawing them with OpenGL. It worked without much trouble but only at about 70 FPS. I mean, it's fine since text isn't something that has to be refreshed so often but it's still slow.
So I figured that Bitmap.GetPixel() is slow and doing it 500x500 times per frame and decided to make a List<List<Color>> which will hold the colors and I'll only have to use GetPixel once on every pixel and after that, get them from the List (which was supposed to be faster).
Well, the framerate dropped to 1 third of what it was and now I'm confused. Is there something I'm doing wrong?
[QUOTE=Darwin226;22299214]Ok, I need help with something strange.
I've decided to try drawing text on a Bitmap using the .NET framework, then reading the pixels and drawing them with OpenGL. It worked without much trouble but only at about 70 FPS. I mean, it's fine since text isn't something that has to be refreshed so often but it's still slow.
So I figured that Bitmap.GetPixel() is slow and doing it 500x500 times per frame and decided to make a List<List<Color>> which will hold the colors and I'll only have to use GetPixel once on every pixel and after that, get them from the List (which was supposed to be faster).
Well, the framerate dropped to 1 third of what it was and now I'm confused. Is there something I'm doing wrong?[/QUOTE]
Use an array, or better yet use pointers to access the bitmap.
Someone did a test recently and said that it almost doesn't make a difference. Probably only when writing.
[QUOTE=Darwin226;22299308]Someone did a test recently and said that it almost doesn't make a difference. Probably only when writing.[/QUOTE]
Pointers:
4 milliseconds to write 1000x1000 pixels
4 milliseconds to read 1000x1000 pixels
SetPixel:
695 milliseconds to write 1000x1000 pixels
GetPixel:
1828 milliseconds to read 1000x1000 pixels
Wow. Looking into pointers.
Java sucks for game development. :saddowns:
I think I'll be learning to use OpenGL in C++ later this week. :haw:
Yep, drawing text to bitmap, then ti screen is bad.
Unsafe code or not. I guess my only options are Glut for fast rendering or drawing to texture for more than 3 fonts...
[IMG]http://dl.dropbox.com/u/3591152/images/screenshot57.jpg[/IMG]
BUILDIN' BUILDINGZ and havin' fun
Please tell me that will work on Linux.
I'm trying to make an "On touch" system for my game, so when a player gets to a certian point something happens. At the moment i'm trying to make it play a sound when the player steps on a certian tile, but it seems to be playing the sound no matter what, even if the player isn't on the tile.
Here is my "entPlaySound" class:
[code]
Public Class entPlaySound
Public Shared soundPoint As PointF
Public Shared soundName As String
Public Shared allowPlay As Boolean = False
Public Sub New(ByVal position As PointF, ByVal soundNameIn As String)
soundPoint = position
soundName = soundNameIn
operate()
End Sub
Public Sub operate()
'Check to see if the player has hit the sound point yet
If Mushroom.player.Position = soundPoint Then
allowPlay = True
fireEnt()
Else
End If
End Sub
Public Sub fireEnt()
If allowPlay = True Then
Mushroom.gameSound.playSound(soundName)
End If
End Sub
End Class
[/code]
And here is the playSound sub (Called in the "Mushroom.gameSound.Playsound" line)
[code]
Public Sub playSound(ByVal soundName As String)
amPlaying = True
My.Computer.Audio.Play("sounds\" & soundName & ".wav")
End Sub
[/code]
Simple, I know, but I'm geting the sound play when the form is loaded, rather than when the player steps on a certian tile! Anyone got any idea why this could be?
I wish I could do shit with graphics :P. I played ME2 this weekend for the first time this weekend and it's like a fucking truck of goodness graphically and shiz. And it's not only the art, like the lighting is amazing, on people's clothes you can like see the light hitting individual threads, and you can even see blemishes on people's face and some of their stubble. It's insane, and to have managed to get that to play on nearly max on my modest hardware is amazing. I think I'm going to be fucking around with DirectX/OpenGL for a bit.
[code]
#include <stdio.h>
#include <tchar.h>
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
string name;
string reply;
char strnew[255];
// Death func
int death();
// The sections
//You waking up
int s1();
int s1torch();
int s1zombie();
int s1pit();
int s1as();
//After you get the TORCH
int s2();
int s2back();
int s2wall();
int s2eatbrick();
int s2pushbrick();
int s2pullbrick();
int s2gate();
// Nelsonshire
int s3();
int s3pub();
int s3shop();
int s3inn();
// Deciders
int retID(string caseR);
int retID2(string caseR);
int retID3(string caseR);
int retID4(string caseR);
int retID5(string caseR);
int retID6(string caseR);
int retID7(string caseR);
// For s1()
int retID(string caseR)
{
if (caseR == "NORTH" || caseR == "north" || caseR == "North") {
return 1;}
if (caseR == "SOUTH" || caseR == "south" || caseR == "South") {
return 2; }
if (caseR == "WEST" || caseR == "west" || caseR == "WEST") {
return 3; }
}
int retID2(string caseR)
{
if (caseR == "TORCH" || caseR == "Torch" || caseR == "torch") {
return 1;}
if (caseR == "SOUTH" || caseR == "South" || caseR == "south") {
return 2; }
if (caseR == "WEST" || caseR == "West" || caseR == "west") {
return 3; }
if (caseR == "NORTH" || caseR == "North" || caseR == "north") {
return 4;
}
}
int retID3(string caseR)
{
if (caseR == "SOUTH" || caseR == "South" || caseR == "south") {
return 1; }
if (caseR == "WEST" || caseR == "West" || caseR == "west") {
return 2; }
}
int retID4(string caseR)
{
if (caseR == "SOUTH" || caseR == "South" || caseR == "south") {
return 1; }
if (caseR == "WEST" || caseR == "West" || caseR == "west") {
return 2; }
if (caseR == "WALL" || caseR == "Wall" || caseR == "wall") {
return 3; }
}
int retID5(string caseR)
{
if (caseR == "VERB" || caseR == "Verb" || caseR == "verb") {
return 1; }
if (caseR == "EAT" || caseR == "Eat" || caseR == "eat" ) {
return 2; }
if (caseR == "PUSH" || caseR == "Push" || caseR == "push") {
return 3; }
if (caseR == "PULL" || caseR == "Pull" || caseR == "pull") {
return 4; }
}
int retID6(string caseR)
{
if (caseR == "EAST" || caseR == "East" || caseR == "east") {
return 1; }
if (caseR == "SOUTH" || caseR == "South" || caseR == "south" ) {
return 2; }
}
int retID7(string caseR)
{
if (caseR == "EAST" || caseR == "East" || caseR == "east") {
return 1; }
if (caseR == "SOUTH" || caseR == "South" || caseR == "south" ) {
return 2; }
}
// greeting
int main()
{
cout << "Greetings! Welcome to the Turnip Role Playing Game! \n I am the Dungeon Master! Let's begin! \n What is your first name? \n";
cin >> name;
system("cls");
cout << "Okay, " << name << ", let's get down to buisness! \n PRESS ENTER TO CONTINUE";
system("pause >Nul");
s1();
}
// First part of the adventure
int s1()
{
system("cls");
cout << "You awake in a dark area. The drip of water fills echos throughout the dark corridor. Your choices to move are North, South, or West.\n <ANSWER IN ALL CAPS, ONE WORD> \n";
cin >> reply;
switch(retID(reply))
{
case 1:
s1torch();
break;
case 2:
s1zombie();
break;
case 3:
s1pit();
break;
default:
cout << "You can't do that!";
system("pause >Nul");
s1();
}
return 0;
}
// TORCH GET :D
int s1torch()
{
system("cls");
cout << "You stumble northward, only to trip on a long object. Upon further investigation, you find out that it is a TORCH. \n You can go NORTH, WEST, SOUTH, or TORCH.\n";
cin >> reply;
switch(retID2(reply))
{
case 1:
s2();
break;
case 2:
s1();
break;
case 3:
s1as();
break;
default:
cout << "You cannot do that!";
system("pause >Nul");
s1torch();
}
return 0;
}
//Second part of the adventure!
int s2()
{
system("cls");
cout << "You grab the torch and it magically lights up. You can see the stone walls and floors, signifying you're in a dungeon. \n Your options are WEST, and SOUTH. \n";
cin >> reply;
switch(retID3(reply))
{
case 1:
s2back();
break;
case 2:
s1pit();
break;
default:
cout << "You cannot do that!";
}
return 0;
}
int s2back()
{
cout << "You return back to the room you originally started in. You see a strange indentation in the EAST WALL. \n Your options are SOUTH, WEST, or WALL. \n";
cin >> reply;
switch(retID4(reply))
{
case 1:
s1zombie();
break;
case 2:
s1pit();
break;
case 3:
s2wall();
break;
default:
cout << "You cannot do that!";
}
return 0;
}
int s2wall()
{
system("cls");
cout << "You investigate the strange indentation in the wall. To the left lies a loose BRICK. The BRICK is jutting out of the wall about two inches, enough to PULL or PUSH it. What do you do with BRICK? \n (Use just a verb: IE verb) \n";
cin >> reply;
switch(retID5(reply))
{
// Smart-Aleck response
case 1:
system("cls");
cout << "Silly " << name << "! That was an example. Now go back there and do it right!";
system("pause >Nul");
s2wall();
break;
case 2:
s2eatbrick();
break;
case 3:
s2pushbrick();
break;
case 4:
s2pullbrick();
break;
default:
system("cls");
cout << "You can't do that!";
system("pause >Nul");
s2wall();
}
return 0;
}
int s2pushbrick()
{
system("cls");
cout << "You push the brick in, and the room shakes. The indentation in the wall begins to lean towards you. \n You jump out of the way just in time for the bricks to crumble and fall onto the spot where you were just standing. \n You quint as the light from the outside filters through the dust. \n Crawling outside, you see a road, which leads EAST or SOUTH. To the EAST lies a town, and the SOUTH a gate.";
cin >> reply;
switch(retID6(reply))
{
case 1:
s3();
break;
case 2:
s2gate();
break;
default:
system("cls");
cout << "You cannot do that!";
system("pause >Nul");
s2pushbrick();
}
return 0;
}
// Not death, just a waste of a turn :-)
int s2gate()
{
system("cls");
cout << "You hear SOUTH towards the GATE. You are stopped by a guard. He tells you that you cannot pass through. Being the inquisitive young chap/chapette you are, you ask why, to which the guard responds, 'You need training. I mean, it's the wilderness out there! Go to Nelonshire and get training there. Until then I cannot help you.' \n Following his advice, you walk to the town of Nelsonshire.";
system("pause >Nul");
s3();
}
// Nelsonshire :D
int s3()
{
system("cls");
cout << "You enter the city gates of Nelsonshire. The sheer vastness of the city Nelsonshire. There is a PUB, a SHOP, and an INN.";
cin >> reply;
switch(retID7(reply))
{
case 1:
s3pub();
break;
case 2:
s3shop();
break;
case 3:
s3inn();
break;
default:
cout << "You cannot do that!";
system("pause >Nul");
s3();
}
return 0;
}
int s3pub()
{
system("cls");
}
int s3shop()
{
}
int s3inn()
{
}
// Death
int s1as()
{
cout << "You head west, leaving the torch behind. You begin to explore the area you are in. Suddenly you hear the sound of a sword unsheathing, and feel someone - or something's - presence. A katana rips through your abdomen, leaving our halved on the floor.";
system("pause >Nul");
death();
return 0;
}
int s1zombie()
{
system("cls");
cout << "You cautiously walk southbound. You hear a strange moaning from behind you. Before you have a chance to react, a ZOMBIE jumps on top of you. You can feel the flesh being ripped from your bones as you draw your last breath...";
system("pause >Nul");
death();
return 0;
}
int s1pit()
{
system("cls");
cout << "You walk towards the West. You begin to hear the crunch of leaves. \n Just as you begin to wonder why you hear the crunch of leaves in a dark area, you begin to fall. And fall... And fall. \n Your screams of both terror and joy (You did enjoy Ye Olde Rollercoasters as a child) are quashed by spikes at the bottom of the pit.";
system("pause >Nul");
death();
return 0;
}
//Comedic value!
int s2eatbrick()
{
system("cls");
cout << "You eat the brick. It tastes brick-like. You realize you made a stupid mistake (which is true) and fall on the floor dead. Wow, you're an idiot.";
system("pause >Nul");
death();
return 0;
}
int s2pullbrick()
{
system("cls");
cout << "You pull on the brick with all of your might. Since you skipped out on Ye Olde Architecture Class in school, you didn't realize it was a load bearing brick. \n The entire wall falls on you, instantly killing you";
system ("pause >Nul");
death();
return 0;
}
// Death Func
int death()
{
system("cls");
cout << "Congratulations! You have died. Press enter to return to the beginning!";
system("pause >Nul");
system("cls");
s1();
return 0;
}
/* CREDITS:
Lead programmer: ME
Troubleshooter: Firehawk
Beta Testers: ME , Michael "Meow" Gervais, Johnathan "Joshua Florist" Carpenter
*/
[/code]
I'm going to add an inventory/money system. This, in my inexpert opinion, will be what scientists call "hard as fuck."
Sorry but "Beta Testers:" hahaahaha
[QUOTE=ryandaniels;22303842]Sorry but "Beta Testers:" hahaahaha[/QUOTE]
In my defense, they insisted.
You have your whole game in one file? What the fuck?
[QUOTE=Dacheet;22303196]I'm going to add an inventory/money system. This, in my inexpert opinion, will be what scientists call "hard as fuck."[/QUOTE]
That's because you're not nearly using the potential of even the basics of C++.
It's great that you're trying to get experience with programming, but you should pick up a book or something about it. Stuff will become a lot easier if you just look what features C++ has to offer :)
[QUOTE=Darwin226;22300329]Yep, drawing text to bitmap, then ti screen is bad.
Unsafe code or not. I guess my only options are Glut for fast rendering or drawing to texture for more than 3 fonts...[/QUOTE]
shaders shaders shaders
Could you explain a bit better?
Just basic WinAPI stuff. Probably going to use a wrapper if I'm doing more complicated stuff, but it's nice to know the basics.
[img]http://www.cubeupload.com/files/5ffe00wincart.png[/img]
[QUOTE=ZeekyHBomb;22304669]That's because you're not nearly using the potential of even the basics of C++.
It's great that you're trying to get experience with programming, but you should pick up a book or something about it. Stuff will become a lot easier if you just look what features C++ has to offer :)[/QUOTE]
^ What he said. This is true of every language, actually. In VB I used to Dimension loads of stupid things like "Item1" "Item2" etc, all as seperate items. Then I learnt about arrarys, so now I can just have "Dim item(9) As String" and be done with it.
Sorry, you need to Log In to post a reply to this thread.