Game Development

4088 readers
36 users here now

Welcome to the game development community! This is a place to talk about and post anything related to the field of game development.

Community Wiki

founded 2 years ago
MODERATORS
1
 
 
2
3
 
 

Pretty cool theme for a game jam (though I might be slightly biased ๐Ÿ˜‰).

4
 
 

Why do so many games rely on client-side anti cheat and stuff like kernel level anti-cheat?

Anti Commercial-AI license

5
6
 
 

it would mean the world to me if you take the time to play and rate the demo: https://store.steampowered.com/app/3631880/Legend_Of_Hiraq_Demo/

7
8
 
 

How "watery" is this water to you? Enough or do you expect something more from "abstract map-tier water"?

9
10
11
 
 

Animated words and sound design can engage players in a different way than voice acting.

12
13
 
 

I've recently discovered this project, which assuming it works as advertised (which I think wasn't really tested yet, since it seems to be a pretty new repo) sounds like a pretty good library to add into your toolbox.

For those that do not know, LINQ is basically a query language over collections in C#, that allows you (from the top of my head) to do stuff like

someList.Where(x => x.value < 10).OrderBy(x => x.priority).Select(x => x.name)

which would give you a IEnumerable list with names of elements where value is smaller than 10, ordered by priority.

However, using LINQ in performance critical code, such as per-frame Updates, is not really a good idea because it unfortunately does generate a lot of garbage (allocations for GC to collect). Having a version that doesn't allocate anything sounds awesome, assuming you are a fan of LINQ.

What are your thoughts? For me, it sounds like something really useful. While it's not really that difficult to avoid LINQ, I'm a fan of the simplicity and descriptive nature of the syntax, and not having to avoid it would be great. It does seem there are quite a few issues starting to pop up, but it's definitely a project that could be worth it to follow.

14
15
16
17
 
 

Cross-posted from "3 years of intense learning - The Dawnmaker Post-mortem" by @[email protected] in [email protected]


I've had this game on my wishlist for a while, since I saw the demo via gamingonlinux, but I haven't found the time to buy and play it yet. Found this post-mortem insteresting.

18
19
 
 

๐Ÿš€ Our 18th annual game design challenge has launched!

๐Ÿ’ฌ Topic: #Communication

๐Ÿ“† Submit ideas by March 24th

โญ $10,000 in cash prizes
โญ Critiques for all Finalists

๐ŸŽฎ Please boost to reach #gamedevs, #designers, #artists, #writers, #composers, and more.

๐Ÿงก Presented by an award-winning #nonprofit program producing videogames for #violence #prevention since 2008.

Details, rules, communication resources at the contest website.

๐ŸŒ https://communicating.games

#games #gamedev #indiedev #gamedesign #gamejam #nonprofit #education #edtech @gamedev

20
 
 

If you do want to see Dani-like gamedev challenges go vote the challenge in this video's comments. There is no view limit to the challenge and I pick the best one from the comments! If the video gets popular I'll just have more motivation to make it but I'll do it anyway. https://www.youtube.com/watch?v=bZy1aUEGb1U&t=22s

21
22
12
submitted 1 month ago* (last edited 1 month ago) by cli345 to c/gamedev
 
 

Hello, ๐Ÿ™‚

I created a new language called FuncSug. Its purpose is to make GUI programming in the browser easier and so game programming. The facility consists on eliminating asynchronism: In FuncSug, the code is no longer managed by an implicit/explicit global loop (I don't speak about implementation).

I intend, if I have time, to implement it for Godot as well. In FuncSug, the first tutorial of Godot would be roughly coded as this:

func showMessage(p_message):
	parallel exitWith branch 2 ||
		showIn(p_message, $MessageLabel)
	||
		waitSeconds(2)

parallel ||
	while true:
		# Start of game
		parallel exitWith branch 2 ||
			showMessage('Dodge the\nCreeps')
		||
			waitSeconds(1)
			awaitPressed($StartButton)
		get_tree().call_group(&"mobs", &"queue_free")
		score := 0
		$Player.start($StartPosition.position)
		
		# Middle of game
		parallel exitWith branch 1 ||
			awaitSignal('hit')
		||
			while true:
				playSoundFile('House In a Forest Loop.ogg')
		||
			showMessage('Get Ready')
			parallel ||
				while true:
					waitSeconds(1)
					score += 1
			||
				while true:
					waitSeconds(0.5)
					callgd spawnMob()
		
		# End of game
		parallel ||
			showMessage('Game Over')
		||
			playSoundFile('gameover.wav')
||
	while true:
		await score
		$ScoreLabel.text := score

The 'player.gd' and 'mob.gd' files would be keeped as they are. The "_on_MobTimer_timeout" function would be renamed as "spawnMob" and moved to 'mob.gd'. The timers wouldn't be needed any more.

Can you tell me what you think about it?

23
 
 

Itโ€™s been approximately 3 years since I began work on Balatro - and in that time I have personally documented almost nothing about the journey. This is something that has bothered me since the game launched. I am constantly forgetting major moments in development or milestones. Itโ€™s about time I start writing down what happened, I say better late than never!

This is an account of everything related to Balatro development in chronological order, up to and including the launch day. This should tell the story but more importantly it will serve as a source of truth for me when I look back on this time in a few years to recall the details correctly. I already notice talking to friends, players, and media that I contradict myself on some of the details from time to time. Iโ€™ll try and keep this up to date as I remember more about what happened.

24
25
view more: next โ€บ