-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathnews.html
237 lines (217 loc) · 15.2 KB
/
news.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
<!DOCTYPE html>
<html lang = en-GB>
<head>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-2MDQ9F697V"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-2MDQ9F697V');
</script>
<meta charset = UTF-8>
<meta name = viewport content = 'width=device-width, initial-scale=1.0'>
<meta name = description content = 'Free HTML5 game dev updates, blog posts, and news! Discover indie games at JoachimFord.uk'>
<meta name = author content = 'Joachim Ford'>
<meta property = og:title content = 'News - Joachim Ford'>
<meta property = og:description content = 'Free HTML5 game dev updates, blog posts, and news! Discover indie games at JoachimFord.uk'>
<meta property = og:image content = https://joachimford.uk/assets/leap-lava.png>
<link rel="icon" type="image/png" href="/favicon/favicon-96x96.png" sizes="96x96" />
<link rel="icon" type="image/svg+xml" href="/favicon/favicon.svg" />
<link rel="shortcut icon" href="/favicon/favicon.ico" />
<link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png" />
<meta name="apple-mobile-web-app-title" content="Joachim" />
<link rel="manifest" href="/favicon/site.webmanifest" />
<title>Indie Game Updates & News - Joachim Ford</title>
<link rel = stylesheet href = /assets/styles.css>
<link rel = stylesheet href = /assets/topnav.css>
<link rel = stylesheet href = /assets/main.css>
<link rel = stylesheet href = /assets/hero.css>
<link rel = stylesheet href = /assets/infinite-carousel.css>
<link rel = stylesheet href = /assets/forms.css>
<link rel = stylesheet href = /assets/footer.css>
<link rel = stylesheet href = /assets/a.css>
<link rel = stylesheet href = /assets/demo.css>
<link rel = stylesheet href = /assets/code.css>
<link rel = stylesheet href = /assets/controls.css>
</head>
<body class = dark>
<div class = over-hold>
<section class = topnav>
<div class = topnav-container>
<a class = topnav-home href = /index#>
<div class = topnav-logo>
<img src = /assets/logo.png alt = logo>
</div>
<div class = topnav-title>
<h2>Joachim</h2>
<h2>Ford.uk</h2>
</div>
</a>
<div class = topnav-menu>
<div class = topnav-menu-wide>
<a href = /games#>Games</a>
<a href = /projects#>Projects</a>
<a href = /blog#>Blog</a>
</div>
<div class = topnav-separator></div>
<div id = color-theme>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-6.5 0 13 13">
<path d="M 0 0 A 2.25 2.25 90 0 0 0 13 A 2.25 2.25 90 0 0 0 0 Z M 0 2 A 2.25 2.25 90 0 1 0 11 Z"/>
</svg>
</div>
<div class = topnav-separator></div>
<div class = topnav-vertical-menu>
<a href = /news# class = active>News</a>
<a href = /about#>About</a>
<a href = /contact#>Contact</a>
</div>
</div>
<div id = nav-bars>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-0.5 -0.5 4 3">
<path stroke-width=".5" stroke="" stroke-linecap="round" stroke-linejoin="round" d="M 0 0 L 3 0 M 0 1 L 3 1 M 0 2 L 2 2"/>
</svg>
</div>
</div>
</section>
<section class = hero-section>
<div id = hero>
<div class = hero-target></div>
<h1 id = hero-text>
<div>
<span>N</span><span>e</span><span>w</span><span>s</span>
</div>
</h1>
</div>
</section>
<section class = main>
<div class = 'content top-huge-pad bottom-huge-pad'>
<div class = demo-gallery>
<div class = 'demo-box wide no-hover'>
<div class = demo-head>
<h2 class = h3>
Splash Dash
</h2>
<h3 class = h4>js1024 winner 2024</h3>
</div>
<a href = /blog/platform-game-in-1k class = 'demo-img-container'>
<img class = demo-img src = /assets/platform-game-in-1k.png alt = 'Make a 1 Kilobyte JavaScript platform game with code golfing'>
<div class = 'demo-button-in-image'>
Play now
<img class = demo-button-in-image-icon src = /assets/run.svg>
</div>
</a>
<div class = demo-text>
<div class = 'demo-body-text'>
<p>
Hello! Check out Splash Dash, the new platform
game that's only <b>one kilobyte</b> in size.
Winner of js1024 2024!
Due to the low byte size, this game cannot
be played on mobile.
</p>
<p>
Move with the Arrow Keys, navigate through
three unique beaches and grab all the coins
to reach the Golden Paradise.
Each level is time restricted, so keep an eye
on the temperature bar.
</p>
<p>
The entire game code is displayed below!
</p>
<div class = 'code-holder top bottom'>
<div class = code-buttons>
<a href = /games/splash-dash>
<div data-tip = 'run' class = 'code-run code-button-icon'>
<img src = /assets/run.svg alt = 'play icon'>
</div>
</a>
<div data-tip = 'copy' class = 'code-copy code-button-icon'>
<img src = /assets/copy.svg alt = 'copy icon'>
</div>
</div>
<pre class = code><span style="color:var(--operator)"><</span><span style="color:var(--variable)">canvas</span> <span style="color:var(--variable)">id</span><span style="color:var(--operator)">=</span><span style="color:var(--variable)">c</span><span style="color:var(--operator)">><</span><span style="color:var(--variable)">script</span><span style="color:var(--operator)">></span><span style="color:var(--keyword)">for</span><span style="color:var(--operator)">(</span><span style="color:var(--variable)">p</span><span style="color:var(--operator)">=</span><span style="color:var(--string)">'(e,d)Q<17&!PeightO0,NNNWLr(KfoKJ=d:Ikey x,y=c./2o.fillRect(+.),4,.1e==>S(e=innerd=(i-1Styl"#+=-e)*u+HA(d5,e(d,eA)| 5)M[i-d)*u+W,(&&(=Q=>*Math.sin(+1]==e. Codel=n=>{JWwidthWidth6,HhOHO6,ogetContext`2d`,u=(W+H)5,r=,l,f)=>l,u*f,u*fC=d,F=e,g&s?f=-.18:ef.007,h?d-=.1:qd.1t,KLKs=N9,WA&! &!)e%1<fF,s=1,f=0 )|A||d<0|d5>70C, )f=NF)ePA)&a)>k[~~d*~~e]=1R=Nx=70;x--;)Jy=30;y--;)"+~(5x)-543A()?K,1):a()>&yPk[x*y]ff0",Kx4,y41p/50+x+R++.3));JK-W,NWK7L034",L-m*W/5e3,H/9r+f,.4rKd3,e0698",i=634;i-=2;o.lineTo(/9]+13))p?(]*>3(]02p*)-),~=~/9)&e>12&e<14?f/4:*=.97*<630-=]5):M.push(N0);KN13,70(R?++m>5e3?C:p9:T>4?t="#ff0":k=[T*=14,Tm=1],requestAnimationFrame(l)},f=g=h=q=s=u=T=m=p=Nk=[M=[]],t="#3897",S38|87?gI39|68?qI37|65?hINon down,1on upa(1+~~e,~~d,6d*e*9+T)+d5AaQ>Nl()'</span>;<span style="color:var(--variable)">G</span><span style="color:var(--operator)">=/</span>[^!<span style="color:var(--operator)">-</span><span style="color:var(--variable)">HMR</span><span style="color:var(--operator)">-</span>~]<span style="color:var(--operator)">/</span>.<span style="color:var(--function)">exec</span>(<span style="color:var(--variable)">p</span><span style="color:var(--operator)">)</span>;<span style="color:var(--operator)">)</span><span style="color:var(--keyword)">with</span><span style="color:var(--operator)">(</span><span style="color:var(--variable)">p</span>.<span style="color:var(--function)">split</span>(<span style="color:var(--variable)">G</span><span style="color:var(--operator)">))</span><span style="color:var(--variable)">p</span><span style="color:var(--operator)">=</span><span style="color:var(--function)">join</span>(<span style="color:var(--function)">shift</span>(<span style="color:var(--operator)">))</span>;<span style="color:var(--keyword)">eval</span><span style="color:var(--operator)">(</span><span style="color:var(--variable)">p</span><span style="color:var(--operator)">)</</span><span style="color:var(--variable)">script</span><span style="color:var(--operator)">></span></pre>
</div>
<p>
Ever wondered how these 1k games are made?
Check out my blog post
<a href = /blog/platform-game-in-1k class = link>
"Make a Platform Game in 1K of JavaScript"
</a>
to learn more about it!
</p>
</div>
</div>
</div>
<div class = 'demo-box wide no-hover'>
<div class = demo-head>
<h2 class = h3>
Squirtcopter
</h2>
<h3 class = h4>The Fast-Paced Helicopter Game</h3>
</div>
<a href = /games/squirtcopter class = 'demo-img-container'>
<img class = demo-img src = /assets/squirtcopter-3.png alt = 'A fast-paced 2D helicopter indie game with retro inspired graphics'>
<div class = 'demo-button-in-image'>
Play now
<img class = demo-button-in-image-icon src = /assets/run.svg>
</div>
</a>
<div class = demo-highlight>
Defeat the bosses and save humanity in a fast-paced
action adventure.
</div>
<div class = demo-text>
<div class = 'demo-body-text'>
<p>
Hello everyone! Check out my new action
helicopter game for Gamedev.js 2024.
This game is a complete upgrade and rewrite of
an earlier version I made a couple of years
ago. Hope you enjoy!
</p>
</div>
</div>
</div>
</div>
</div>
</section>
<section class = footer>
<div class = footer-left>
<span>© Joachim Ford <span id = year>2025</span></span>
<span>All rights reserved</span>
<span class = top-small>
<form class = 'subscribe-form-tiny'>
<div class = flex-x>
<input type = email class = form placeholder = 'email' required>
<button class = send-form-button type = submit>
Subscribe
</button>
</div>
</form>
</span>
<div class = 'footer-socials top-small'>
<a href = mailto:contact@joachimford.uk target = _blank><img src = /assets/mail.svg alt = 'email icon'></a>
<a href = https://github.com/Hope41 target = _blank><img src = /assets/github.svg alt = 'github icon'></a>
<a href = https://youtube.com/@JoachimFord target = _blank><img src = /assets/youtube.svg alt = 'youtube icon'></a>
<a href = https://joachimford.itch.io target = _blank><img src = /assets/itch.svg alt = 'itch.io icon'></a>
<a href = https://x.com/JoachimFord target = _blank><img src = /assets/x.svg alt = 'x logo'></a>
</div>
</div>
<div class = footer-right>
<a href = /index# class = basic-link>Home</a>
<a href = /games# class = basic-link>Games</a>
<a href = /projects# class = basic-link>Projects</a>
<a href = /blog# class = basic-link>Blog</a>
<a href = /news# class = basic-link>News</a>
<a href = /about# class = basic-link>About</a>
<a href = /contact# class = basic-link>Contact</a>
</div>
</section>
</div>
<script src = /assets/main.js></script>
<script src = /assets/hero.js></script>
<script src = /assets/code.js></script>
</body>
</html>