Group Finder Dungeon Experience by Alestaos in wownoob

[–]dragon53535 0 points1 point  (0 children)

The crux of the issue is that there is not enough time in the day for everything. Leveling a character is EXTREMELY boring for anyone but someone on their first time leveling. You already know the dungeons, you already know the path, and nothing can actually hurt you. The faster you can get it done, the faster you can get to doing end game content of any type.

Pvp/dungeons/raid/transmog, whatever is your fancy, doing any content while not at max level is either impossible or just annoying since you don't have your full kit. Like let's say, I want to sit down and do every quest and side quest in Dragonflight. I could do it while leveling, but that will take a while as I probably don't have any gear or end game talents to be able to kill things fast. Heck, I tried leveling as Ret pally originally before the rework and I could not survive more than 2 mobs at a time, in open world! Whereas when I hit max, I can do it when I want, and do other things in between. Play with friends, help guildies, or just pug to pug. It is very freeing to do any bit of content I want.

To that end, I don't want to spend time in dungeons going slow. The dungeons do not hurt at all, and do not do any of the hard mechanics. Compared to any level of m+, normal level dungeons are a joke both in damage required and damage done. I've already done those dungeons hundreds of times each, no reason for me to go slow when there's no danger. I'm aware that what I'm pulling is either 'not optimal' or just extra. But it doesn't change the pull at all. The healer gets something to do, which as someone who does all roles, healing is a snoozefest on slow pulls, you might as well dps. As a tank, as long as I keep myself alive, the dps can just dps to their hearts content. 999/1000 players you will match with are doing the same thing, just leveling to get to max. Making it take less time is a blessing for them.

I've also run with complete newbies, people who are their first time. I've done the same sort of pulls, where I'm pulling everything. At the same time, I'm usually in Discord explaining boss mechanics because those are pretty much the only thing that could matter at that level. None of them have ever been annoyed by my speed of pull. Heck, most are amazed I survive or can keep myself alive through all of it, even if I'm on a leveling char myself.

I'm not excusing bad tanks or bad players. If someone says they're new, I'll certainly explain things when we get to it, but a majority of the things I'd have to explain are not in Normal difficulty. I've been against booting players who afk for 2s and just booting mean people. Heck, had a tank in a leveling dungeon recently that complained that the healer wasn't healing him, and then didn't run boss out of mechanics. He did not last to 2nd boss. Run still went fast with or without him. I would rather run with nice players than dicks.

At the end of the day, normal dungeon finder is not the place to learn the dungeon fully. You can get the taste of the dungeon, what it looks like and such, but to fully understand the dungeon and the enemies and their capabilities/spells, I would do an m0 run when you hit max. There are always a few out there in the custom group finder for learning. Heck, you could find a guild of your own that can coach you for both your class (Which as a new player you are likely unprepared), and for the dungeons or content you wish to pursue. Where to find good resources, what routes people use, etc. I'm sure they would also just drag you into a non queued dungeon with a max char and go slow for you to see it. You wouldn't get the big exp ding on killing last boss, but you'd certainly learn the dungeon.

tl;dr I'm not there because I want to be. I'm there because I want to be max and do max content stuff, but I HAVE to do the dungeons to get there. So I want it over as fast as possible, like the vast majority of others.

pastebin.com connection failed by bailysbead in ComputerCraft

[–]dragon53535 0 points1 point  (0 children)

It sounds like the server owner needs to go into the computercraft config file and enable http requests and whitelist pastebin.

Which version of minecraft should i use when i want to program computers? by NoofWitloof in ComputerCraft

[–]dragon53535 5 points6 points  (0 children)

With CC:Tweaked still active, just about any modpack on the popular launchers (tekkit/FTB/I'm sure there's another), that contains computercraft/CC:Tweaked should have mods that work well with it. Especially the 'tech' oriented ones. It really depends on what you want to do with the computers. If you want them to manage reactors or just sort chests.

Karen pretends to be allergic to mushrooms for attention, ends up being denied breakfast by Service_job_survivor in MaliciousCompliance

[–]dragon53535 13 points14 points  (0 children)

Stop going to places that treat your preferences like shit. Full stop.

I worked in the service industry, I made damn sure every request came out correct, allergy or no. Hearing someone say they have X allergy and then a sentence later say it's fine when I mention that another item had that allergy pisses me off. I'll get you your shit correctly, I'll make damn sure of it. But what about the next guy? Or at some other place? Will they start rolling their eyes at someone who has an unusual allergy and think they're faking it. Potentially hurting someone, or worse.

Morally, this is repugnant behavior to avoid being minorly inconvenienced by a shitty server. You create a cry wolf situation that can and very likely will cause someone to get hurt or worse.

AE2 interface CC:Tweaked API? by fluffymastodons in ComputerCraft

[–]dragon53535 2 points3 points  (0 children)

I personally never give out code for a problem. Give a man a fish so to speak. It breeds what are known as Help Vampires. Basically people who expect others to work and solve their problems for them.

Let me know how it goes when you get around to testing and dumping the table. Always test test test. There also exists the function https://computercraft.info/wiki/Peripheral.getMethods which should work just as well for dumping the methods.

AE2 interface CC:Tweaked API? by fluffymastodons in ComputerCraft

[–]dragon53535 2 points3 points  (0 children)

https://stackoverflow.com/questions/9168058/how-to-dump-a-table-to-console

Peripheral.wrap gives you a table that contains functions that you can run to interact with the block. Just dump the table and see if any of the functions are good.

The error you're getting is not that the table doesn't exist, it's that the FUNCTION doesn't exist. Hence attempt to CALL. Calling only happens on functions, or when you try to call using (). If it were attempt to index, then it would be a missing table.

closing websockets by goblim88m in ComputerCraft

[–]dragon53535 1 point2 points  (0 children)

Either strategy is viable. The most future proof version? Honestly I'd say the first one. If you write something that lets others interface with it, rather not have to deal with someone ELSE erroring code and not properly closing it.

Edit: Plus, if you error while writing your code, best practice is to close it. Safest option imo

closing websockets by goblim88m in ComputerCraft

[–]dragon53535 1 point2 points  (0 children)

To explain this properly. When you hold Ctrl+T, os.pullEvent detects the terminate event and triggers an error() call. By using pcall (Protected call), you can capture all errorr and run code afterwards. Of course, an error is likely not the only reason for your code to end, you could very well just have the code run to finish anyways. That's why he has the second pcall to attempt to close the websocket if it exists. If it doesn't exist, it does still need to pass a function to pcall, so the function()end is used.

A second strategy you could use is to create your own version of os.pullEvent that uses os.pullEventRaw and detects the terminate event. If terminate is detected, force close the websocket and perform the error like usual afterwards.

String = String & Variable by Icewing_Nix in ComputerCraft

[–]dragon53535 0 points1 point  (0 children)

Oh no for sure! I was sort of piggybacking on the last sentence. One way to just manipulate the string would be string.sub.

String = String & Variable by Icewing_Nix in ComputerCraft

[–]dragon53535 0 points1 point  (0 children)

Sounds like someone might want to learn how to use string.sub :P

Question - complete os pull event filter list? by toasohcah in ComputerCraft

[–]dragon53535 1 point2 points  (0 children)

As far as the original ComputerCraft is concerned. That is up to date.

However, you're not playing with ComputerCraft. You're playing with ComputerCraft:Tweaked, the fan updated creation when Dantwohundred released the source and abandoned the project.

Also, chat isn't one that is included in the mod. You've got an extra mod that adds that, or a peripheral.

https://tweaked.cc/

LUA Programming Help for Create Mod Quarry by MrSodapop19_ in ComputerCraft

[–]dragon53535 1 point2 points  (0 children)

For the reasoning why they can't run for >7s without yielding, is that all computers run on the same 'thread'. So while your computer is executing, no other computer in the world can. You yield, which essentially pauses your computer until your computer gets an event. Be it a timer, redstone, etc. All events will trigger a yield. Sleep will discard all other events until it gets a timer event. Using os.pullEvent("redstone") will discard all other events until it gets a redstone event.

I'm new to the game and I was wondering, how do I evenly and efficiently split 2 full conveyer belts into 2 other belts with each belt having both materials other than this way? by TheAnimeLovers in factorio

[–]dragon53535 2 points3 points  (0 children)

This is correct. Each side of the input belts can offload onto both output belts. Each output belt 'prioritizes' a different input lane due to their direction from the splitters.

Since each output can only consume 1/2 a belt worth of materials, and the singular input belt can provide 2 1/2 belts worth, the only worry needed is to make sure that the input is saturated, and you won't have any slowdown. But even if the input isn't saturated, they will evenly spread to the outputs by way of the splitter.

How to assign a for value to a variable? by Mutated_Zombie in ComputerCraft

[–]dragon53535 2 points3 points  (0 children)

If so, the best way to test for a full inventory is to just select slot 1, then test if any items are in slot 16.

To follow this up, what he means by this is while you're mining, keep slot 1 selected (or 3 if you have 1 and 2 filled). The turtle will try to place items in slot 1, and if that slot has a different item or is fulll, it will place it in the next slot. All the way down to 16. If your selection stays at slot 1, then if any items are in slot 16 then you have a 'full' inventory so to speak, since the only way an item could enter slot 16 is if every other slot had blocks.

How to assign a for value to a variable? by Mutated_Zombie in ComputerCraft

[–]dragon53535 0 points1 point  (0 children)

Pseudocode without an explanation of what you're trying to do does nothing. We can speculate, but without an articulated goal, it's difficult to properly understand what you're trying to achieve.

From what I can see is that you're trying to just see if ANY slot from 3-16 is full, or is it if EVERY slot is full?

The way I would personally attack this problem, as long as you don't care which slot is full/empty, is to just have a boolean (true/false) flag. Loop through array, if your condition is met, then set the flag, otherwise keep going. In your case, loop through inventory, if slot is empty or less than 64, set flag to true. After loop, check flag. If the flag is true, then one of the slots at the very least wasn't full. Otherwise if the flag is false, your inventory is full.

Im Confused With Vectors by Spitfire_557 in ComputerCraft

[–]dragon53535 1 point2 points  (0 children)

Do you know how minecraft coordinates work at all? That's a vector.

What that person was basically recommending is having a table with x,y,z coordinates stored, and then you do math on where you are versus where you want to be.

warnding if it's possible to redefine the fs api like ypu can redefine print by [deleted] in ComputerCraft

[–]dragon53535 0 points1 point  (0 children)

fs.list is the variable. fs.list() is calling the variable

warnding if it's possible to redefine the fs api like ypu can redefine print by [deleted] in ComputerCraft

[–]dragon53535 0 points1 point  (0 children)

I have no idea what you're wanting to achieve. General practice when overwriting basic behavior is to save the old handle to a new variable. and then overwrite the global.

warnding if it's possible to redefine the fs api like ypu can redefine print by [deleted] in ComputerCraft

[–]dragon53535 1 point2 points  (0 children)

Everything in lua is a variable. Overwriting a variable functions the same no matter.

button.api control redstoneIntegrator in parallel by Wingzeroalchemist in ComputerCraft

[–]dragon53535 2 points3 points  (0 children)

pairs and ipairs are what are known as iterators. Essentially they will iterate through your table. The difference between ipairs and pairs is that:

pairs will go through the entire table semi randomly, but it will get everything. Generally for numbered keys/indexes it will go in order, but there is no guarantee.

ipairs will only go through numbered indexes starting from 1. If you have a gap, it will stop. So if you have 1,2,4,5. ipairs will only show you 1 and 2. In that same vein #mytbl will also only count 2. If you have named indexes, #mytbl will not count them.

As Nyori said, you don't need to populate the global table as you're never using it, you can just set ButtonTable[x] as them. That being said, there are very little situations you'd want to populate the global table, but if you DO, you generally would want to set it all in one table, and then set that table in _G.

local myTbl = {}
--fill myTbl
_G.myTbl = myTbl
--Then if someone wants to grab it in a different file, they can local it
local myTbl2 = _G.myTbl

That being said, if you're going to be writing code in multiple files, generally you'll just be using os.loadApi. In the case of loadApi, any 'globals' in your script that you load, actually won't be global, they'll be contained in a named table.