Danmaku Fortress 2

Gamecubic

L1: Registered
Apr 22, 2009
17
0
Just forget about this. Since you seem unable to read that I DID NOT MAKE THE DANMAKU (bullet hell) YET.
 
Last edited:

Ida

deer
aa
Jan 6, 2008
2,289
1,372
This is a small project of mine to convert the TF2 characters into Touhou-style danmaku bosses.

NOTE: I will NOT offer a free download for this. (unless Valve agrees, blah blah blah)

What, are you planning on a paid download? Because that would be a million times worse, legally speaking. If you just make this as a tiny little project, I'm sure neither Valve nor the Touhou developer would care (especially not Valve).
 

Retroid

L5: Dapper Member
Aug 25, 2009
206
22
You even programmed this or have you just replaced some assets with TF2 ones? Seems very bizare that you would go on to try and sell what basically is a merge of assets from one game and another...

I'm just going to tell you now; I'm out.

144F75CD-E10E-D309-9F25067DBD624875.jpg
 
Last edited:

Gamecubic

L1: Registered
Apr 22, 2009
17
0
You even programmed this or have you just replaced some assets with TF2 ones? Seems very bizare that you would go on to try and sell what basically is a merge of assets from one game and another...

I'm just going to tell you now; I'm out.

[image]

As far as I know, this is the code I made for DF2's menu
Code:
task MenuScreen(let choicemax) {
	let choice = 0;
	let trig = false;
	
	PlayMusic(CSD ~ "bgm\STAGE.CREDITS.mp3");
	
	MenuScreenBackground;
	
	while(!trig) {
		if(GetKeyState(VK_UP) == KEY_PUSH) {
			choice --;
			PlaySE(CSD ~ "sfx\MENU.MOVE.wav");
			}
		if(GetKeyState(VK_DOWN) == KEY_PUSH) {
			choice ++;
			PlaySE(CSD ~ "sfx\MENU.MOVE.wav");
			}
		
		if(choice < 0) {
			choice = choicemax;
			}
		if(choice > choicemax) {
			choice = 0;
			}
		
		MenuScreenChoice(CSD ~ "img\MENU.CHOICE.1.png", 42, 320, 206, 356, 0);
		MenuScreenChoice(CSD ~ "img\MENU.CHOICE.2.png", 42, 356, 209, 392, 1);
		
		Wait(1);
		
		if(GetKeyState(VK_SHOT) == KEY_PUSH) {
			PlaySE(CSD ~ "sfx\MENU.SELECT.wav");
			
			trig = true;
			
			alternative(choice)
				case(0) {diff = "N";}
				case(1) {diff = "L";}
			}
		}
	
	FadeOutMusic(CSD ~ "bgm\STAGE.CREDITS.mp3", 60);
	
	Wait(60);
	
	Stage1;
	
	InGame = true;
	
	task MenuScreenBackground {
		let off = 256/60;
		let alpha = 255;
		
		let obj = Obj_Create(OBJ_EFFECT);
		Obj_SetPosition(obj, 0, 0);
		
		ObjEffect_SetTexture(obj, CSD ~ "img\MENU.BG.png");
		ObjEffect_SetRenderState(obj, ALPHA);
		ObjEffect_SetPrimitiveType(obj, PRIMITIVE_TRIANGLEFAN);
		ObjEffect_SetLayer(obj, 8);
		ObjEffect_CreateVertex(obj, 4);
		
		ObjEffect_SetVertexUV(obj, 0, 0, 0);
		ObjEffect_SetVertexUV(obj, 1, 640, 0);
		ObjEffect_SetVertexUV(obj, 2, 640, 480);
		ObjEffect_SetVertexUV(obj, 3, 0, 480);
		
		while(!trig) {
			ObjEffect_SetVertexXY(obj, 0, 0, 0);
			ObjEffect_SetVertexXY(obj, 1, 640, 0);
			ObjEffect_SetVertexXY(obj, 2, 640, 480);
			ObjEffect_SetVertexXY(obj, 3, 0, 480);
			
			Wait(1);
			}
		
		while(alpha > 0) {
			ascent(i in 0..4) {
				ObjEffect_SetVertexColor(obj, i, alpha, 255, 255, 255);
				}
			
			ObjEffect_SetVertexXY(obj, 0, 0, 0);
			ObjEffect_SetVertexXY(obj, 1, 640, 0);
			ObjEffect_SetVertexXY(obj, 2, 640, 480);
			ObjEffect_SetVertexXY(obj, 3, 0, 480);
			
			
			if(alpha > 0) {
				alpha -= off;
				}
			else {
				Obj_Delete(obj);
				}
			
			Wait(1);
			}
		
		Obj_Delete(obj);
		}
	
	task MenuScreenChoice(let g, let x1, let y1, let x2, let y2, let pos) {
		let width = x2 - x1;
		let height = y2 - y1;
		
		let obj = Obj_Create(OBJ_EFFECT);
		Obj_SetPosition(obj, 0, 0);
		
		ObjEffect_SetTexture(obj, g);
		ObjEffect_SetRenderState(obj, ALPHA);
		ObjEffect_SetPrimitiveType(obj, PRIMITIVE_TRIANGLEFAN);
		ObjEffect_SetLayer(obj, 8);
		ObjEffect_CreateVertex(obj, 4);
		
		ObjEffect_SetVertexUV(obj, 0, 0, 0);
		ObjEffect_SetVertexUV(obj, 1, width, 0);
		ObjEffect_SetVertexUV(obj, 2, width, height);
		ObjEffect_SetVertexUV(obj, 3, 0, height);
		
		if(pos != choice) {
			ascent(i in 0..4) {
				ObjEffect_SetVertexColor(obj, i, 127, 255, 255, 255);
				}
			}
		
		ObjEffect_SetVertexXY(obj, 0, x1, y1);
		ObjEffect_SetVertexXY(obj, 1, x2, y1);
		ObjEffect_SetVertexXY(obj, 2, x2, y2);
		ObjEffect_SetVertexXY(obj, 3, x1, y2);
		
		Wait(1);
		
		Obj_Delete(obj);
		}
	}
So yes I programmed it.

And the program I use to make DF2 (Touhou Danmakufu) has like one image that comes packed in it for use in scripts so it's NOT a texture replacement.

And to clear the stuff about "no free download" I mean "no download". I'm only doing this for fun, I don't want ANYTHING from this project Except to get better at programming. I will upload a video of the result, but that's about it. It's what most people on Nico do anyway.

Somehow, I knew it would be a bad idea to post this here. I won't tell WHY I thought it was a bad idea, though.
 

Vincent

&#128296 Grandmaster Lizard Wizard Jedi &#128296
aa
Sep 5, 2009
912
684
What's the point of that.
"Oh I'm going to start a project people might be interested in, post about it on a few forums, then tell them 'oh never mind I'm just doing this for practice and even if I get this game finished you can't play it!'"

I don't follow.