- 355
- 251 609
Mr. 4th Dimention
Registrace 15. 01. 2011
Archives of streams and old 4coder related videos.
(04.26.2024) FATSAT: "Watchers" to Accelerate Propagation [Part 1]
(04.26.2024) FATSAT: "Watchers" to Accelerate Propagation [Part 1]
zhlédnutí: 219
Video
(04.26.2024) FATSAT: "Watchers" to Accelerate Propagation [Part 2]
zhlédnutí 96Před 2 měsíci
(04.26.2024) FATSAT: "Watchers" to Accelerate Propagation [Part 2]
(04.20.2024) FATSAT: User Facing Features, Solving Sudoku Boards
zhlédnutí 156Před 2 měsíci
(04.20.2024) FATSAT: User Facing Features, Solving Sudoku Boards
(04.17.2024) Investigating the Linker & Loader on Windows & Linux
zhlédnutí 597Před 2 měsíci
(04.17.2024) Investigating the Linker & Loader on Windows & Linux
(04.15.2024) Story Engine: Value Stack & Variables for the Virtual Machine
zhlédnutí 179Před 2 měsíci
(04.15.2024) Story Engine: Value Stack & Variables for the Virtual Machine
(04.12.2024) Organizing Better Audio Processing Code
zhlédnutí 178Před 2 měsíci
(04.12.2024) Organizing Better Audio Processing Code
(04.11.2024) SAT Solver: Writing the Core of the CDCL Algorithm
zhlédnutí 144Před 2 měsíci
(04.11.2024) SAT Solver: Writing the Core of the CDCL Algorithm
(04.08.2024) Story Engine: Building the new Virtual Story Machine
zhlédnutí 351Před 2 měsíci
(04.08.2024) Story Engine: Building the new Virtual Story Machine
(04.05.2024) SAT Solver: Naive SAT to CNF-SAT Conversion
zhlédnutí 354Před 2 měsíci
(04.05.2024) SAT Solver: Naive SAT to CNF-SAT Conversion
(04.02.2024) Story Engine, Graph Modeling Experiments
zhlédnutí 344Před 3 měsíci
(04.02.2024) Story Engine, Graph Modeling Experiments
(03.29.2024) Code Reading, MiniSat [Final]
zhlédnutí 181Před 3 měsíci
(03.29.2024) Code Reading, MiniSat [Final]
(03.25.2024) Fancy String Upgrades for Layout and Scrolling [Part 2]
zhlédnutí 98Před 3 měsíci
(03.25.2024) Fancy String Upgrades for Layout and Scrolling [Part 2]
(03.25.2024) Fancy String Upgrades for Layout and Scrolling [Part 1]
zhlédnutí 142Před 3 měsíci
(03.25.2024) Fancy String Upgrades for Layout and Scrolling [Part 1]
(03.22.2024) Writing Content for the Story Engine
zhlédnutí 141Před 3 měsíci
(03.22.2024) Writing Content for the Story Engine
(03.19.2024) Story Engine, Graph Stack Machine
zhlédnutí 287Před 3 měsíci
(03.19.2024) Story Engine, Graph Stack Machine
(03.16.2024) Code Reading, MiniSat [Part 2]
zhlédnutí 2KPřed 3 měsíci
(03.16.2024) Code Reading, MiniSat [Part 2]
(03.16.2024) Code Reading, MiniSat [Part 1]
zhlédnutí 870Před 3 měsíci
(03.16.2024) Code Reading, MiniSat [Part 1]
(03.11.2024) Adding Small Upgrades to my Platform Layer
zhlédnutí 336Před 3 měsíci
(03.11.2024) Adding Small Upgrades to my Platform Layer
(03.10.2024) Story RogueLike Game Jam (Day 5)
zhlédnutí 170Před 3 měsíci
(03.10.2024) Story RogueLike Game Jam (Day 5)
(03.09.2024) Story RogueLike Game Jam (Day 4) [Part 3]
zhlédnutí 70Před 3 měsíci
(03.09.2024) Story RogueLike Game Jam (Day 4) [Part 3]
(03.09.2024) Story RogueLike Game Jam (Day 4) [Part 1]
zhlédnutí 207Před 3 měsíci
(03.09.2024) Story RogueLike Game Jam (Day 4) [Part 1]
(03.09.2024) Story RogueLike Game Jam (Day 4) [Part 2]
zhlédnutí 41Před 3 měsíci
(03.09.2024) Story RogueLike Game Jam (Day 4) [Part 2]
(03.07.2024) Story RogueLike Game Jam (Day 3)
zhlédnutí 118Před 3 měsíci
(03.07.2024) Story RogueLike Game Jam (Day 3)
(03.05.2024) Story RogueLike Game Jam (Day 2) [Part 3]
zhlédnutí 110Před 3 měsíci
(03.05.2024) Story RogueLike Game Jam (Day 2) [Part 3]
(03.05.2024) Story RogueLike Game Jam (Day 2) [Part 2]
zhlédnutí 45Před 3 měsíci
(03.05.2024) Story RogueLike Game Jam (Day 2) [Part 2]
(03.05.2024) Story RogueLike Game Jam (Day 2) [Part 1]
zhlédnutí 159Před 3 měsíci
(03.05.2024) Story RogueLike Game Jam (Day 2) [Part 1]
(03.04.2024) Story RogueLike Game Jam (Day 1)
zhlédnutí 436Před 3 měsíci
(03.04.2024) Story RogueLike Game Jam (Day 1)
(03.02.2024) Code Reading, CDCL Sat Solver [Part2]
zhlédnutí 150Před 3 měsíci
(03.02.2024) Code Reading, CDCL Sat Solver [Part2]
(03.02.2024) Code Reading, CDCL Sat Solver [Part1]
zhlédnutí 451Před 3 měsíci
(03.02.2024) Code Reading, CDCL Sat Solver [Part1]
(04.16.2023) [Part2] Multi-Track Audio Visualizer - Handmade Network Jam Project
zhlédnutí 615Před rokem
(04.16.2023) [Part2] Multi-Track Audio Visualizer - Handmade Network Jam Project
cool
love this video format
"PromoSM"
czcams.com/video/ieUFlT0wzsg/video.html I love watching your vids! :)
Looks great. Keep it up.
github?
None of the story engine work is open yet. But you can find all of my open projects on git.mr4th.com
long time no see, glad to see you again
Hey I find your content very interesting, but I am new to development, could you please say what you are trying to build?
yo what's the editor you use ?
That's 4coder !
thanks so cool! can i know which font you used ?@@Mr4thdimention
@@glepnir522 I am using a font called 'Liberation Mono'
What gamejam is this exactly? and is your Story Roguelike going to be more like a text adventure without a parser rather than a classic tile map roguelike?
Well - as for "what game jam" I started it as a personal game jam for myself. A container in which to play with the idea and experiment. It turned out that the day I started this was exactly the right time for me to spend 7 days participating in 7DRL challenge, so I'm submitting it to that since it works out so nicely, but I'll still continue with my original plan to spend a month experimenting freely in this way too. To your other question, yes. The idea is that it's a "story game" you read about what happens and choose what to do next by interacting with words on the screen, instead of interacting through a spatial interface. The game mechanics are designed to still be clearly a RogueLike in the sense that it has permadeath and random reconfiguration of the elements of the experience between runs. The game design is also changed where needed to better suit the interface. For instance, instead of the player performing exploration by moving through a 2D grid of cells, exploration is simulated in the current version more like a hidden deck of cards, where you draw a new card and reveal more of the dungeon when you explore successfully. I'm still in very early experimental days trying to see how this idea works out!
@@Mr4thdimention That sounds really interesting. I like to make adventure games with Adrift. I am not a programmer unfortunately. I find traditional interactive fiction that is based around solving puzzles boring, I find narrative story telling more engaging. I did come across one really unique roguelike from a 7DRL jam in the past called "The Only Shadows that the Desert knows" you had to read books 'one paragraph' in the game world to get clues like timelines and names of people and you could travel back through time to be able to go into a peaceful territory to find a NPC or an artifact, where as current time it is a hostile place etc. Its a shame the dev didn't keep going with it and expand on his ideas. It is a buried gem now. Perhaps a little off topic, but just an example of how roguelikes can break the mold. I would like to see more text driven roguelikes to be a hybrid of text adventures and roguelikes. Do you have a blog about this project of yours? or will you mainly will be posting video updates on your channel here?
@@Daz30 I have a few places where I post updates on my projects. On this CZcams channel I just store archives of my Twitch streams. I am just getting started with this, and right now my plan is to mix this with a lot of my other programming projects, which I post about mr4th.com and the email newsletter attached to the site. But if this project continues to go well I'll think about making some dedicated channels for it.
Who is back, back again
Allen drops another value bomb!
The legend is back! Hello.
Did you ever play the puzzle game “Wonderland Adventures” from like mid 2000s I think? That game had some great text effects with like wiggling/moving/pulsing text.
I'll check it out!
good episode
Is it possible to get the file bar at the bottom like emacs?
A really good video. If you can attempt other problem set like the ones on codeforces or cses in x86 assembly. That would be a really interesting video to watch.
Can you please share the source code of this video
yo what is the keybind to open this themes menu
Hit alt-x to bring up the command lister and type in "theme lister"
@@Mr4thdimention i asked because in your videos you hava a thrme preview and change font option
@@cozyfog ahhh right this is from the alpha version of 4coder. Some of the heavier weight UI stuff was dropped in the change to 4.1.X
how can i get this theme for my terminal?
360p gang
Exciting Project, I'll be interested to see where it goes.
Glad to see another stream
Is there a specific reason why you chose to use LLVM's LLD as opposed to Microsoft's LINK.exe?
It works better in my little build scripts czcams.com/play/PLT6InxK-XQvNKmJsl12tgEXu92iDqsHnw.html The exe for link gets shadowed in bash emulators by the command to create symbolic links which is also called "link".
How do you feel like programming without auto-completion? I tried it for a while but it was tough 😅 I could not remember anything.
First lol
You're a genius man
Are these lessons available anywhere?
Unfortunately this project was cancelled. I don't believe there are any materials left from it.
Nice Work.
Hello, how are you? I bought your software yesterday. Cool editor, now I understand with api. I hope everything is all right with you.
Oh, and also, it seems that this site has expired ssl certificate
Glad to see I'm not the only one who has trouble getting anything to work on Windows. Why is this so hard? Also, Thanks so much for the content! I'm looking forward to this!
what keyboard are you using?
I use a CODE keyboard.
@@Mr4thdimention thx
Watched the entire thing. Very entertaining to watch you solve this
Dude you are a legend
*sieve
Ahhh I'm never going to get that right.
@@Mr4thdimention How about I buy a copy of 4Coder and we'll call it even. Edit: Done. Looking forward to using it for a little project I'm doing to get back into native code development in the evenings
I'm looking at the statement at 1:22:14 about the factors of X being less than the sqrt(X); if I understood the statement correctly, I don't think it is correct. Factors of X can be larger than sqrt(X). For example: 26 = 13 * 2. and 13 is bigger than sqrt(26) ~ 5. I think the error in the proof is the "and" and it should have been "or". Your proved that "a" and "b" cannot be both greater than the sqrt(X) which is correct but one of them still can. However, you can say that both "a" and "b" cannot be larger than X/2 because if one of them is larger the other one has to be smaller than 2 which is impossible. Anyway, it didn't matter for the given problem because the solution happens to smaller than the sqrt(X).
I might have given a poor explanation, or written it down wrong. The idea is that one of the factors must be less than or equal to sqrt(X). In the final solver I account for cases like 2*13 = 26 by not stopping at the first prime until X goes below the first prime or I get through the whole list of primes.
Win32 API ? Instant subscribe !
What is up? I put on a video about WFC and end up with someone coding their own IDE and RNG. WHERE'S THE WFC?
I can see you... Though it's 4 years after you posted.
What is this editor? Can you share your dot files?
This is 4coder. I'm not sure what you mean by "dot files"
can you increase the video quality? it's hard to see what you're doing.
CZcams just needs time to process it.
What windows is this
7 using classic theme
@@whatcanyoudo6158 ok
Good way to show your skills to others but not to teach something to anyone.
Correct. This was more just for me to hang out with people and get help from the crowd while dealing with an annoying problem. I would recommend reading the final code if you're interested in learning about this.
Damn windows 7 looks good
true as fuck
Thanks for this, wracked my head for an hour trying to figure out how to paint outside the area but kept running into various issues 👍
c/c++ do not support multiline string, so VS highlighter just stops at line break - no need to parse and treat source as string after line break. However - multiline comments /* */ obviously span across multiple lines and this is the behavior you have currently for strings.
You shouldn't call BeginPaint/EndPaint while handling WM_NCPAINT message or doing custom drawing outside WndProc, these pair are only only for handling WM_PAINT. Basically EndPaint does ValidateRect/Rgn to clear window repaint region so WndProc won't stuck in a WM_PAINT loop. WM_PAINT only sent to window when it has non empty update region. NCPAINT processed differently and does not use regular update region and message queue.
Painting outside client area is a mess in windows OS. The dwm manager has drasticly different behavior and APIs in win7, win8 and win10. However, managed to figure out several solutions for that and how to beat windows API to get what I want.
Yeah it all feels like a pretty big hack. That's why I wanted to take some time to look at it in isolation and try to reduce it down to the most streamlined thing I could find that actually gets the job done. If you've got something working then that's all that really matters but I ended up turning this session into a public example on GitHub so that others can use what I've found: github.com/4th-dimention/examps It's such a messy problem that I'm sure someone can find a reason not to use it. Some configuration where it fails, or some windows feature it screws up. But hopefully it's mostly useful to people? I think it's pretty good anyway.
@@Mr4thdimention thanks for sharing
Please tell me your solution, I'm struggling to paint outside of client area in Windows 10 22H2.
@@devisals Need more information about what you're actually trying to achieve. It's a bit different when you want to paint over acrylic (transparent blurred window). In general, to enable paint over NC area and keep dwm stuff (shadow and border with round edges) you should first call DwmExtendFrameIntoClientArea with rect (0, 0, 1, 0). Yes, 1px border at the top should be present, otherwise shadow and border will be gone. After calling DwmExtendFrameIntoClientArea you should recalc window with SetWindowPos and SWP_FRAMECHANGED flag (set other related flags if you don't want to resize/reposition your window). For getting transparent blurred window more setup is required and it's a bit hacky. In your WndProc you should handle following messages: WM_ERASEBKGND - just return 1, this prevents unnecessary flicker and bg painting; WM_NCCALCSIZE - this is where magic happens, when wParam == FALSE pass it to DefWindowProc, when TRUE you should compute rgrc[0] rectangle of the window. Typically it's same as GetWindowPlacement rect, but for maximized window it should be shrinked by border width (use GetSystemMetrics to calc the border); WM_NCHITTEST - you should detect all of the special window areas and return corresponding hit test to the system in order to keep standard functionality (resizing, maximizing etc). If you don't want standard window buttons to be painted (you just overdraw them yourselves - process them also here). If you don't want to change standard caption buttons appearance and functionality - call DwmDefWindowProc first; WM_PAINT - paint your stuff within the window. Now you can paint over the whole window area (except 1px border at the top). It's better not to use GDI here, because it doesn't work with transparency. Especially if you need to paint over blurred background. I prefer to use Direct2D.
Is there anyway around DWM? What if I remove the boarders of the window, make a rectange surrounding the Window and treat that as the boarder?
does it support other languages? does it support LSP? does it support debuggers? $24 why? if does less than free tools?
this video sucks
and now that i've tried the demo. this editor sucks.
@@stephenkamenar based