porotoman99

joined 1 year ago
[–] [email protected] 3 points 7 months ago

I'm continuing Daggerfall Unity now that version 1.0 is out. There were only 2 minor issues that I had with it when I previously played, and they both look to be fixed. I've joined a knights order, a temple, and the Dark Brotherhood, and got my character up to a high enough level that I would be comfortable with going for the main quest.

[–] [email protected] 5 points 7 months ago* (last edited 7 months ago)

I just finished Scorn, it was very interesting.

I feel like the combat wasn't necessary since the puzzles and exploration felt like the main focus of the game, but at the same time, I don't know how they could have made the environment feel dangerous without the threat of death. There was a puzzle later in the game that did require you to injure yourself, but I don't think that would have worked as a replacement for combat in the rest of the game, and being present throughout the game would lessen the impact of it in the short moment where it is actually necessary. Also, the guns were very neat looking, so that is an additional upside to having combat.

Even though this sounds like a lot of complaining, I don't think I could come up with any other criticisms, as pretty much everything else about the game felt perfect. I don't think it is the sort of thing I will play again, but it will be something I will think back on more than most other games.

[–] [email protected] 7 points 7 months ago

It looks like he has been involved in local politics, but not much is written about the last few years. https://en.wikipedia.org/wiki/Rudy_Pantoja

[–] [email protected] 2 points 8 months ago (5 children)

Does that really matter if there are proper systems to deal with the pollution?

[–] [email protected] 3 points 8 months ago

I've been playing the original Doom for the first time over the last few days, and just beat it today. It was really good and I can see why it was such a big deal at the time. It was a significant improvement over Wolfenstein 3D in every way, not just technically, but also in terms of level design and story.

[–] [email protected] 2 points 8 months ago* (last edited 8 months ago)

Python

Part 1: https://github.com/porotoman99/Advent-of-Code-2023/blob/main/Day%207/part1.py

Code

import os

filePath = os.path.dirname(os.path.realpath(__file__))
inputFilePath = filePath + "\\adventofcode.com_2023_day_7_input.txt"
# inputFilePath = filePath + "\\part1.txt"

def typeSort(hand):
	cardCount = {
		"2": 0,
		"3": 0,
		"4": 0,
		"5": 0,
		"6": 0,
		"7": 0,
		"8": 0,
		"9": 0,
		"T": 0,
		"J": 0,
		"Q": 0,
		"K": 0,
		"A": 0
	}
	for card in hand:
		cardCount[card] += 1
	cardTotals = list(cardCount.values())
	cardTotals.sort(reverse=True)
	if(cardTotals[0] == 5):
		return 6
	elif(cardTotals[0] == 4):
		return 5
	elif(cardTotals[0] == 3 and cardTotals[1] == 2):
		return 4
	elif(cardTotals[0] == 3):
		return 3
	elif(cardTotals[0] == 2 and cardTotals[1] == 2):
		return 2
	elif(cardTotals[0] == 2):
		return 1
	else:
		return 0

def bucketSort(camelCard):
	totalScore = 0
	cardOrder = ["2","3","4","5","6","7","8","9","T","J","Q","K","A"]
	hand = camelCard[0]
	totalScore += cardOrder.index(hand[4]) * 15 ** 1
	totalScore += cardOrder.index(hand[3]) * 15 ** 2
	totalScore += cardOrder.index(hand[2]) * 15 ** 3
	totalScore += cardOrder.index(hand[1]) * 15 ** 4
	totalScore += cardOrder.index(hand[0]) * 15 ** 5
	return totalScore

hands = []
bids = []

with open(inputFilePath) as inputFile:
	for line in inputFile:
		lineSplit = line.split()
		hand = lineSplit[0]
		bid = lineSplit[1]
		hands.append(hand)
		bids.append(bid)

bids = [int(bid) for bid in bids]

camelCards = list(zip(hands,bids))

typeBuckets = [[],[],[],[],[],[],[]]

for camelCard in camelCards:
	hand = camelCard[0]
	typeScore = typeSort(hand)
	typeBuckets[typeScore].append(camelCard)

finalCardSort = []

for bucket in typeBuckets:
	if(len(bucket) > 1):
		bucket.sort(key=bucketSort)
	for camelCard in bucket:
		finalCardSort.append(camelCard)

camelScores = []

for camelIndex in range(len(finalCardSort)):
	scoreMultiplier = camelIndex + 1
	camelCard = finalCardSort[camelIndex]
	camelScores.append(camelCard[1] * scoreMultiplier)

print(sum(camelScores))

Part 2: https://github.com/porotoman99/Advent-of-Code-2023/blob/main/Day%207/part2.py

Code

import os

filePath = os.path.dirname(os.path.realpath(__file__))
inputFilePath = filePath + "\\adventofcode.com_2023_day_7_input.txt"
# inputFilePath = filePath + "\\part1.txt"

def typeSort(hand):
	cardCount = {
		"J": 0,
		"2": 0,
		"3": 0,
		"4": 0,
		"5": 0,
		"6": 0,
		"7": 0,
		"8": 0,
		"9": 0,
		"T": 0,
		"Q": 0,
		"K": 0,
		"A": 0
	}
	for card in hand:
		cardCount[card] += 1
	jokerCount = cardCount["J"]
	cardCount["J"] = 0
	cardTotals = list(cardCount.values())
	cardTotals.sort(reverse=True)
	if(cardTotals[0] + jokerCount == 5):
		return 6
	elif(cardTotals[0] + jokerCount == 4):
		return 5
	elif(
		cardTotals[0] + jokerCount == 3 and cardTotals[1] == 2
		or cardTotals[0] == 3 and cardTotals[1] + jokerCount == 2
	):
		return 4
	elif(cardTotals[0] + jokerCount == 3):
		return 3
	elif(
		cardTotals[0] + jokerCount == 2 and cardTotals[1] == 2
		or cardTotals[0] == 2 and cardTotals[1] + jokerCount == 2
	):
		return 2
	elif(cardTotals[0] + jokerCount == 2):
		return 1
	else:
		return 0

def bucketSort(camelCard):
	totalScore = 0
	cardOrder = ["J","2","3","4","5","6","7","8","9","T","Q","K","A"]
	hand = camelCard[0]
	totalScore += cardOrder.index(hand[4]) * 15 ** 1
	totalScore += cardOrder.index(hand[3]) * 15 ** 2
	totalScore += cardOrder.index(hand[2]) * 15 ** 3
	totalScore += cardOrder.index(hand[1]) * 15 ** 4
	totalScore += cardOrder.index(hand[0]) * 15 ** 5
	return totalScore

hands = []
bids = []

with open(inputFilePath) as inputFile:
	for line in inputFile:
		lineSplit = line.split()
		hand = lineSplit[0]
		bid = lineSplit[1]
		hands.append(hand)
		bids.append(bid)

bids = [int(bid) for bid in bids]

camelCards = list(zip(hands,bids))

typeBuckets = [[],[],[],[],[],[],[]]

for camelCard in camelCards:
	hand = camelCard[0]
	typeScore = typeSort(hand)
	typeBuckets[typeScore].append(camelCard)

finalCardSort = []

for bucket in typeBuckets:
	if(len(bucket) > 1):
		bucket.sort(key=bucketSort)
	for camelCard in bucket:
		finalCardSort.append(camelCard)

camelScores = []

for camelIndex in range(len(finalCardSort)):
	scoreMultiplier = camelIndex + 1
	camelCard = finalCardSort[camelIndex]
	camelScores.append(camelCard[1] * scoreMultiplier)

print(sum(camelScores))

I tried to do this one as quickly as possible, so the code is more messy than I would prefer, but it works, and I don't think the solution is too bad overall.

Edit: I went back and changed it to be a bit better. Here are my new solutions:

Part 1 v2: https://github.com/porotoman99/Advent-of-Code-2023/blob/main/Day%207/part1v2.py

Code

import os

filePath = os.path.dirname(os.path.realpath(__file__))
inputFilePath = filePath + "\\adventofcode.com_2023_day_7_input.txt"
# inputFilePath = filePath + "\\part1.txt"

CARD_ORDER = "23456789TJQKA"

def typeSort(camelCard):
	cardCount = {}
	for card in CARD_ORDER:
		cardCount[card] = 0
	hand = camelCard[0]
	for card in hand:
		cardCount[card] += 1
	cardTotals = list(cardCount.values())
	cardTotals.sort(reverse=True)
	if(cardTotals[0] == 5):
		return 6
	elif(cardTotals[0] == 4):
		return 5
	elif(cardTotals[0] == 3 and cardTotals[1] == 2):
		return 4
	elif(cardTotals[0] == 3):
		return 3
	elif(cardTotals[0] == 2 and cardTotals[1] == 2):
		return 2
	elif(cardTotals[0] == 2):
		return 1
	else:
		return 0

def handSort(camelCard):
	totalScore = 0
	hand = camelCard[0]
	totalScore += CARD_ORDER.index(hand[4]) * 15 ** 1
	totalScore += CARD_ORDER.index(hand[3]) * 15 ** 2
	totalScore += CARD_ORDER.index(hand[2]) * 15 ** 3
	totalScore += CARD_ORDER.index(hand[1]) * 15 ** 4
	totalScore += CARD_ORDER.index(hand[0]) * 15 ** 5
	return totalScore

hands = []
bids = []

with open(inputFilePath) as inputFile:
	for line in inputFile:
		lineSplit = line.split()
		hand = lineSplit[0]
		bid = lineSplit[1]
		hands.append(hand)
		bids.append(int(bid))

camelCards = list(zip(hands,bids))
camelCards = sorted(camelCards, key=lambda x: (typeSort(x), handSort(x)))

camelScores = []

for camelIndex in range(len(camelCards)):
	scoreMultiplier = camelIndex + 1
	camelCard = camelCards[camelIndex]
	camelScores.append(camelCard[1] * scoreMultiplier)

print(sum(camelScores))

Part 2 v2: https://github.com/porotoman99/Advent-of-Code-2023/blob/main/Day%207/part2v2.py

Code

import os

filePath = os.path.dirname(os.path.realpath(__file__))
inputFilePath = filePath + "\\adventofcode.com_2023_day_7_input.txt"
# inputFilePath = filePath + "\\part1.txt"

CARD_ORDER = "J23456789TQKA"

def typeSort(camelCard):
	cardCount = {}
	for card in CARD_ORDER:
		cardCount[card] = 0
	hand = camelCard[0]
	for card in hand:
		cardCount[card] += 1
	jokerCount = cardCount["J"]
	cardCount["J"] = 0
	cardTotals = list(cardCount.values())
	cardTotals.sort(reverse=True)
	if(cardTotals[0] + jokerCount == 5):
		return 6
	elif(cardTotals[0] + jokerCount == 4):
		return 5
	elif(
		cardTotals[0] + jokerCount == 3 and cardTotals[1] == 2
		or cardTotals[0] == 3 and cardTotals[1] + jokerCount == 2
	):
		return 4
	elif(cardTotals[0] + jokerCount == 3):
		return 3
	elif(
		cardTotals[0] + jokerCount == 2 and cardTotals[1] == 2
		or cardTotals[0] == 2 and cardTotals[1] + jokerCount == 2
	):
		return 2
	elif(cardTotals[0] + jokerCount == 2):
		return 1
	else:
		return 0

def handSort(camelCard):
	totalScore = 0
	hand = camelCard[0]
	totalScore += CARD_ORDER.index(hand[4]) * 15 ** 1
	totalScore += CARD_ORDER.index(hand[3]) * 15 ** 2
	totalScore += CARD_ORDER.index(hand[2]) * 15 ** 3
	totalScore += CARD_ORDER.index(hand[1]) * 15 ** 4
	totalScore += CARD_ORDER.index(hand[0]) * 15 ** 5
	return totalScore

hands = []
bids = []

with open(inputFilePath) as inputFile:
	for line in inputFile:
		lineSplit = line.split()
		hand = lineSplit[0]
		bid = lineSplit[1]
		hands.append(hand)
		bids.append(int(bid))

camelCards = list(zip(hands,bids))
camelCards = sorted(camelCards, key=lambda x: (typeSort(x), handSort(x)))

camelScores = []

for camelIndex in range(len(camelCards)):
	scoreMultiplier = camelIndex + 1
	camelCard = camelCards[camelIndex]
	camelScores.append(camelCard[1] * scoreMultiplier)

print(sum(camelScores))

[–] [email protected] 3 points 8 months ago

Python

Part 1: https://github.com/porotoman99/Advent-of-Code-2023/blob/main/Day%204/part1.py

Part 2: https://github.com/porotoman99/Advent-of-Code-2023/blob/main/Day%204/part2.py

I found out about this event for the first time yesterday and was able to get caught up in time for day 4.

[–] [email protected] 1 points 8 months ago (2 children)

I wonder if a challenge mode where you start on a different planet instead of Nauvis would be feasible. At the very least, I expect that a mod will do it eventually.

[–] [email protected] 5 points 8 months ago (7 children)

I wonder if we will be able to use the lava to produce steam for power. They've shown some new machines, but to actually produce the electricity is something that would also be interesting to see. If you first come to the planet entirely unprepared, will you be able to build your way back up to another rocket, or will you have to die to respawn on Nauvis?

[–] [email protected] 4 points 8 months ago (1 children)

They mentioned the drill can mine a 12x12 area, so there is probably some uranium from the patch to the right that is close enough for it to get. Looking more closely, there is a sulfuric acid pipe running to the drill. I don't know how this works with the current miners, but perhaps piping in the acid forces it to mine the uranium instead of the iron?

[–] [email protected] 4 points 8 months ago (1 children)

You might be able to try putting

getstage TG03

in the console to figure out where the game thinks you are in the quest. The quest page on UESP should have a table at the bottom that gives a breakdown of what the values mean. You can try doing what the quest expects of you, or using

setstage TG03 [stage]

to put the quest back on track. Make sure to make a save before messing with the console, last time I broke something with it, I had to redo 10 hours since my last save

[–] [email protected] 5 points 9 months ago

As far as I'm aware, the inclusion of real-world animal species in the older anime and games was due to the lack of variety in existing Pokemon species. The last time I know they referred to a real animal was in 2016, where the Pokedex entry for Raichu says it can knock out an Indian elephant. More recently, Raichu's Pokedex entry was updated to instead say it can incapacitate a Copperajah.

view more: ‹ prev next ›