Python Forum
Why doesnt chunk generation work?
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Why doesnt chunk generation work?
#1
So basically I have been trying to get a terrain generator but the values are always the same on the top left corner. Any ideas why? Wall Wall

MAIN SCRIPT
import pygame
import player
import world_gen

pygame.init()

tk = pygame.time.Clock()
FPS = 60

background = pygame.image.load('imgs/background_gradient.png')


is_running = True

(WIN_W, WIN_H) = (1600, 900)
display = pygame.display.set_mode((WIN_W, WIN_H))
pygame.display.set_caption('2D Minecraft v0.0 ALPHA')

temp_tile = pygame.image.load('imgs/temp_tile.png')

def HandleDrawing():
    display.blit(background, (0, 0))

    at_block = 0
    for chunk in world_gen.world_dat:
        display.blit(temp_tile, (chunk[at_block], chunk[at_block+1]))
        at_block += 1

    if player.is_walking:
        if not player.left and player.right:
            display.blit(pygame.transform.flip(player.walk_anim[player.at_walk_frame], True, False), (player.x, player.y))

        elif not player.right and player.left:
            display.blit(player.walk_anim[player.at_walk_frame], (player.x, player.y))

        elif player.left and player.right:
            display.blit(player.player, (player.x, player.y))

    else:
        display.blit(player.player, (player.x, player.y))

    pygame.display.update()

world_gen.chunk_gen(1)
while is_running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            is_running = False
    player.Movement()
    HandleDrawing()

    tk.tick(FPS)
pygame.quit()
WORLD GEN
import pygame
import noise
import random

chunk_size = 24
grid_size = 40
noise_multiplier = 0.05

world_dat = []

def chunk_gen(x):
    global world_dat
    chunk_dat = []
    for x_pos in range(chunk_size):
        h = int(noise.pnoise1(x + x_pos* chunk_size * noise_multiplier, repeat=9999999) * 5)
        chunk_dat.append(x + x_pos * grid_size)
        chunk_dat.append(h)

    chunk_dat.append(round(x / chunk_size)) 
    world_dat.append(chunk_dat)

Attached Files

Thumbnail(s)
   
Reply
#2
The attached image is what I would expect from you code. How does this differ from what you are expecting?
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  print doesnt work in a function ony 2 233 Mar-11-2024, 12:42 PM
Last Post: Pedroski55
  Pydoc documentation doesnt work Cosmosso 5 4,266 Nov-25-2023, 11:17 PM
Last Post: vidito
  pip install requests doesnt work misodca 8 5,605 Jul-07-2023, 08:04 AM
Last Post: zyple
  Node Flow Generation in Python Linenloid 0 630 Feb-21-2023, 07:09 PM
Last Post: Linenloid
  Allure Report Generation rotemz 0 752 Jan-24-2023, 08:30 PM
Last Post: rotemz
  Ldap3 Python print(conn.entries) doesnt work ilknurg 15 5,573 Dec-28-2022, 11:22 AM
Last Post: shad
  pip install pystyle doesnt work person_probably 2 2,004 Sep-23-2022, 02:59 PM
Last Post: person_probably
  Random data generation sum to 1 by rounding juniorcoder 9 3,350 Oct-20-2021, 03:36 PM
Last Post: deanhystad
Question PDF generation / edit SpongeB0B 2 2,042 Jul-28-2021, 05:59 AM
Last Post: SpongeB0B
  if conditions in the for indentation doesnt work ? Sutsro 6 3,829 Jun-15-2021, 11:45 PM
Last Post: bowlofred

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020